sql存储过程selectinto
‘壹’ 如何在sql SERVER里实现select * from 存储过程
事实上是没有办法直接实现的,你需要分两步走,第一步,把执行好的结果放入一张表中,可以是你建立的表,也可以是临时表。第二步,从表中查询对应数据。这样才可以。存储过程数据插入表语法 insert into 表明 exe 存储过程名
其实我不太理解你为什么要这样做,如果存储过程是个查询,那么所有的数据处理和数据统计都可以在存储过程中写的,无需这样做。你能说下需求么看当然 如果你觉得你每次都要执行,用起来麻烦,那么你可以做成一个作业,放在服务器上定时的自动跑。然后查询表名字就可以了
‘贰’ 写存储过程问题 select……into……中 into后加多个参数是怎么回事
你见的这个存储过程是Oracel的吧?在MSSQL中无此语法的。
‘叁’ sql存储过程语句select * into
表变量必须显示的用create创建
select into可以创建实体表,跟临时表#tb
‘肆’ 关于oracle存储过程select into 未找到数据问题
begin
selectcount(*)intov_countfrombpa_df_rolewheredrename=record_drenameandddnid=ddnid_new;
ifv_count=0
then
selectdreidintodreid_newfrombpa_df_rolewheredrename=record_drenameandddnid=ddnid_new;
update....
else
update...
endif;
end;
类似这样处理吧,得前边定义一个v_count的变量,网络这个换行换的真难看,能看懂吧?
不过update后必须要提交,要不重新进来,还是未更改状态
‘伍’ oracle存储过程select语句必须带into吗
oracle存储过程select语句必须带into。因为要将查询结果放到变量中,如以下存储过程:
createorreplaceprocerep_test
as
v_begintimevarchar2(20);
v_endtimevarchar2(20);
v_strvarchar2(10);
begin
v_begintime:=to_char(sysdate,'yyyy-mm-ddhh24:mi:ss');
select'badkano'intov_strfromal;
v_endtime:=to_char(sysdate,'yyyy-mm-ddhh24:mi:ss');
dbms_output.put_line('开始时间为:'||v_begintime);
dbms_output.put_line('结束时间为:'||v_endtime);
end;
其中select 'badkano' into v_str from al;此句就是将“badkano”放入变量“v_str”中。
‘陆’ SQL 语句 存储过程中的两条insert into select 语句分别执行都能成功执行,但是一起执行的话只执行第一条
两条你要分开独立执行,或者两条一起执行不能把代码贴在一起!
而且你也没贴代码,不好判断
‘柒’ ORACLE 存储过程 在此 SELECT 语句中缺少 INTO 子句,怎么办
select出来的结果要放到变量中去,select ... into .... from ... where ....
‘捌’ mysql 存储过程中的select into outfile语句生成的文件放哪里
表数据导出到一个文本文件最简单的方法是使用SELECT... INTO OUTFILE语句的查询结果直接导出到一个文件在服务器主机上。
导出数据的SELECT...INTO OUTFILE声明:
这句话的语法结合了常规的SELECT INTO OUTFILE文件名的末尾。默认的输出格式是相同的LOAD DATA,所以下面的语句导出tutorials_tbl的表制表符分隔的,换行结尾的文件到/tmp/tutorials.txt:
mysql> SELECT * FROM tutorials_tbl
-> INTO OUTFILE '/tmp/tutorials.txt';
也可以更改输出格式,使用选项来指示如何引用和分隔列和记录。 CRLF终止线要导出tutorial_tbl的CSV格式的表格,使用这样的语句:
mysql> SELECT * FROM passwd INTO OUTFILE '/tmp/tutorials.txt'
-> FIELDS TERMINATED BY ',' ENCLOSED BY '"'
-> LINES TERMINATED BY '
';
SELECT ... INTO OUTFILE具有以下属性:
由MySQL服务器直接创建输出文件,这样的文件名应指定您希望在服务器主机上的文件将被写入。没有本地版本的LOAD DATA LOCAL版本的类似的语句。
必须要有MySQL的FILE权限才能执行的SELECT... INTO语句。
输出文件必须不存在。这可以防止MySQL从会破坏文件可能重要。
应该在服务器主机上或一些方法来检索文件从该主机的登录帐户。否则SELECT... INTO OUTFILE可能是没有价值的。
在Unix下,创造了世界可读的文件和所拥有的MySQL服务器。这意味着虽然就可以读取该文件,但是不能够删除它。
- $ mysqlmp -u root -p --no-create-info
- --tab=/tmp TUTORIALS tutorials_tbl
- password ******
- $ mysqlmp -u root -p TUTORIALS tutorials_tbl > mp.txt
- password ******
- -- MySQL mp 8.23
- --
- -- Host: localhost Database: TUTORIALS
- ---------------------------------------------------------
- -- Server version 3.23.58
- --
- -- Table structure for table `tutorials_tbl`
- --
- CREATE TABLE tutorials_tbl (
- tutorial_id int(11) NOT NULL auto_increment,
- tutorial_title varchar(100) NOT NULL default '',
- tutorial_author varchar(40) NOT NULL default '',
- submission_date date default NULL,
- PRIMARY KEY (tutorial_id),
- UNIQUE KEY AUTHOR_INDEX (tutorial_author)
- ) TYPE=InnoDB;
- --
- -- Dumping data for table `tutorials_tbl`
- --
- INSERT INTO tutorials_tbl
- VALUES (1,'Learn PHP','John Poul','2007-05-24');
- INSERT INTO tutorials_tbl
- VALUES (2,'Learn MySQL','Abl S','2007-05-24');
- INSERT INTO tutorials_tbl
- VALUES (3,'JAVA Tutorial','Sanjay','2007-05-06');
- $ mysqlmp -u root -p TUTORIALS > database_mp.txt
- password ******
- $ mysqlmp -u root -p --all-databases > database_mp.txt
- password ******
- $ mysqlmp -u root -p database_name table_name > mp.txt
- password *****
- $ mysql -u root -p database_name < mp.txt
- password *****
- $ mysqlmp -u root -p database_name
- states | mysql -h other-host.com database_name
作为原始数据的导出表:
使用mysqlmp程序复制或备份表和数据库。它可以写表输出的原始数据文件或为一组的INSERT语句重新创建该表中的记录。
转储一个表,必须指定一个数据文件 - 选项卡上的选项,表示想要的MySQL服务器写入文件所在的目录。
使用mysqlmp程序复制或备份表和数据库。它可以写表输出的原始数据文件,或为一组的INSERT语句重新创建该表中的记录。
转储一个表,必须指定一个数据文件 - 选项卡上的选项,表示想要的MySQL服务器写入文件所在的目录。
在SQL格式导出表的内容或定义:
一个表中的SQL格式导出到一个文件,使用这样的命令:
这将创建文件的内容如下:
要转储多个表,他们的名字所有的数据库名称参数。要转储整个数据库,不指定任何表后的数据库,如下所示:
所有可用的数据库备份主机上使用以下命令:
在SQL格式导出表的内容或定义:
这些方法可用于实现数据库的备份策略。
表或数据库复制到另一台主机:
如果要复制的表或数据库从一个MySQL服务器,然后使用mysqlmp数据库名和表名。
在源主机上运行以下命令。这将转储完整的数据库到mp.txt文件:
复制完整的数据库,而不使用一个特定的表名称,如上面所解释。
现在,FTP mp.txt文件在另一台主机上,使用下面的命令。在运行此命令之前,请确保已创建目标服务器上的数据库名称。
另一种方法,而无需使用一个中间文件来完成,mysqlmp输出直接通过网络发送到远程的MySQL服务器。如果可以连接到两台服务器的cookbook 数据库所在的主机上,使用以下命令:
命令mysqlmp的一半连接到本地服务器,并写入转储输出管道。 MySQL的一半的命令连接到远程MySQL服务器otherhost.com。它读取输入管和其他host.com服务器发送的每个语句。