[SQL ] mysql routine傳入字串

看板Database (資料庫)作者 (zelda)時間8年前 (2016/12/08 16:33), 8年前編輯推噓1(101)
留言2則, 1人參與, 最新討論串1/1
(針對 SQL 語言的問題,用這個標題。請用 Ctrl+Y 砍掉這行) 資料庫名稱:mysql 資料庫版本:5.1 內容/問題描述: 直接看例子 CREATE PROCEDURE `checkIn`(in var_stCode char(10)) 以下省略 我宣告傳入的是10個字的字串 之後存到一張表格 使用時,特地傳超出長度的字串 結果存下來的當然只有前十個字 想問是否有語法可以擋下並做處理 像handler一樣 縱使截斷字串,可完成執行語法 可不符合使用者預期~ -- 最近看到的簽名檔,拿來借用,不曉得會不會犯了智產權? 西醫治標 中醫治本 中西合璧 治成標本 -- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 118.163.209.145 ※ 文章網址: https://www.ptt.cc/bbs/Database/M.1481185983.A.6ED.html

12/08 22:05, , 1F
開strict SQL mode就會出錯了。5.7版本開始預設是開啟的
12/08 22:05, 1F

12/08 22:05, , 2F
你可以試看看
12/08 22:05, 2F
感謝,我把sql_mode設定成STRICT_ALL_TABLES 就會報錯:Data too long 不過,必須在呼叫前設定才行 為了這問題 花了好多時間 ※ 編輯: pili100 (118.163.209.145), 12/16/2016 14:45:04
文章代碼(AID): #1OIHg_Rj (Database)
文章代碼(AID): #1OIHg_Rj (Database)