MySql 儲存過程 臨時表 無法插入資料
今天在寫儲存過程的時候,發現一個問題就是,sql明明能查出資料,為啥無法插入到臨時表、實體表呢?
儲存過程擷取如下:
BEGIN
/********************************
**作者:jiankunking
**功能:demo
**日期:2016-12-27
**修改日期:2016-01-09
*********************************/
/* 傳入入引數
'002',1,90
CALL PROC_DEMO('002');
*/
DECLARE TABLEANAME VARCHAR(30);
-- 建立臨時表,把需要參加計劃的倉庫放入臨時表
DROP TEMPORARY TABLE IF EXISTS TEMPTABLEANAME;
SELECT OCODEARGUMENT;
CREATE TEMPORARY TABLE TEMPTABLEANAME(LINID INT NOT NULL AUTO_INCREMENT,TABLEANAME VARCHAR(40),PRIMARY KEY(LINID));
INSERT INTO TEMPTABLEANAME(TABLEANAME)
SELECT TABLEANAME FROM JIANKUNKING_TABLEANAME WHERE OCODE=OCODEARGUMENT AND IFNULL(PLANFLG,0)=1;
SELECT * FROM TEMPWAREHOUSE;
END
為啥呢?臨時表不行,實體表也不行。。。。。。。
SELECT TABLEANAME FROM JIANKUNKING_TABLEANAME WHERE OCODE='002' AND IFNULL(PLANFLG,0)=1;
在資料庫中執行是有值的啊
但查詢臨時表,卻沒有插入值:
後來發現,原來是:儲存過程中宣告瞭一個與資料庫中表列名一樣的變數,導致的,修改變數名字或者在查詢時在列名前,新增表名 即可解決。
SQL查詢列名與變數名不要重複
作者:jiankunking 出處:http://blog.csdn.net/jiankunking
相關文章
- Sql儲存過程分頁--臨時表儲存SQL儲存過程
- 批量插入資料的儲存過程儲存過程
- Mysql利用儲存過程插入500W條資料MySql儲存過程
- Mysql 資料庫水平分表 儲存過程MySql資料庫儲存過程
- MySql資料庫——儲存過程MySql資料庫儲存過程
- oracle 匿名儲存過程插入大量測試資料Oracle儲存過程
- MySQL儲存過程詳解 mysql 儲存過程MySql儲存過程
- sql server 儲存過程中使用變數表,臨時表的分析(續)SQLServer儲存過程變數
- MySQL的寫入資料儲存過程MySql儲存過程
- mysql 儲存過程 procedure 批次建表MySql儲存過程
- dbms_lob儲存過程導致臨時表空間100%儲存過程
- sqlserver 臨時表 遊標 儲存過程拼sql 日期函式等SQLServer儲存過程函式
- MySQL儲存過程詳解 mysql 儲存過程linkMySql儲存過程
- mysql-定時呼叫儲存過程MySql儲存過程
- mysql 儲存過程MySql儲存過程
- Mysql使用儲存過程快速新增百萬資料MySql儲存過程
- MySql儲存過程的作用及語法MySql儲存過程
- MySQL 儲存過程進行切換表MySql儲存過程
- 資料庫儲存過程資料庫儲存過程
- 儲存過程語法儲存過程
- MySql儲存過程—2、第一個MySql儲存過程的建立MySql儲存過程
- mysql儲存過程整理MySql儲存過程
- MySQL之儲存過程MySql儲存過程
- [MYSQL -23儲存過程]MySql儲存過程
- MYSQL儲存過程管理MySql儲存過程
- mysql儲存過程例子MySql儲存過程
- mysql的儲存過程MySql儲存過程
- MySQL---------儲存過程MySql儲存過程
- 儲存過程返回資料集儲存過程
- 【Mysql】Mysql儲存過程學習MySql儲存過程
- 儲存過程基本語法儲存過程
- mysql中使用儲存過程生成1億條資料MySql儲存過程
- mysql無法建立儲存過程問題 ERROR 1307 (HY000)MySql儲存過程Error
- mysql如何呼叫儲存過程MySql儲存過程
- Mysql 儲存過程的使用MySql儲存過程
- mysql儲存過程案例解析MySql儲存過程
- mysql儲存過程詳解MySql儲存過程
- mysql儲存過程的修改MySql儲存過程