我正在使用MySql,Delphi。 下面的代碼有什麼問題?'where子句'中的未知列'x'
我在'where子句'中得到「Unknown Column'x' Error - >未知列'_code_ehda_konandeh' 我很需要它。 我不得不這樣做凸出2天后 請........
DELIMITER $$
USE `bimarestan`$$
DROP PROCEDURE IF EXISTS `Save_Ehda_Konande`$$
CREATE DEFINER=`root`@`localhost` PROCEDURE `Save_Ehda_Konande`(
IN _code_ehda_konandeh VARCHAR(50),
IN _tarikh_moarefi VARCHAR(50),
IN _tarikh_tashkil_parvandeh VARCHAR(50),
IN _name VARCHAR(50),
IN _name_khanevadegi VARCHAR(50),
IN _name_pedar VARCHAR(50),
IN _tarikh_tavalod VARCHAR(20),
IN _tahsilat VARCHAR(50),
IN _vaziyat_taahol VARCHAR(50),
IN _noe_bimeh VARCHAR(50),
IN _gorooh_khoon VARCHAR(50),
IN _rezayat_dahandeh VARCHAR(50),
IN _shoghl VARCHAR(50),
IN _address VARCHAR(50),
IN _telphone VARCHAR(50),
OUT _out INT)
BEGIN
IF LTRIM(RTRIM(_code_ehda_konandeh))<>'' THEN
BEGIN
SET _out = 0;
IF NOT EXISTS(SELECT * FROM bimar WHERE `_code_ehda_konandeh` = `code_ehda_konandeh`) THEN
INSERT INTO `ehda_konandeh` (
code_ehda_konandeh,
tarikh_moarefi,
tarikh_tashkil_parvandeh,
NAME,
name_khanevadegi,
name_pedar,
tarikh_tavalod,
tahsilat,
vaziyat_taahol,
noe_bimeh,
gorooh_khoon,
rezayat_dahandeh,
shoghl,
address,
telphone)
VALUES(
_code_ehda_konandeh,
_tarikh_moarefi,
_tarikh_tashkil_parvandeh,
_name,
_name_khanevadegi,
_name_pedar,
_tarikh_tavalod,
_tahsilat,
_vaziyat_taahol,
_noe_bimeh,
_gorooh_khoon,
_rezayat_dahandeh,
_shoghl,
_address,
_telphone
);
ELSE
SET _out = 1;
END IF;
END;
END IF;
END$$
DELIMITER ;
該存儲過程運行MySQL的,沒有任何問題,但是當我想送德爾福參數對此,我得到那個錯誤!
,這是我的Delphi代碼:
if flag_new_edit = 1 then
sp_sabt.StoredProcName := 'Save_Ehda_Konande'
else
sp_sabt.StoredProcName := 'Edit_Ehda_Konande';
With sp_sabt Do
Begin
ParamByName('_code_ehda_konandeh').Value := Trim(txt_code_ehda_konande.Text);
ParamByName('_tarikh_moarefi').Value := Trim(txt_tarikh_tavalod.Text);
ParamByName('_tarikh_tashkil_parvandeh').Value := Trim(txt_name_khanevadegi.Text);
ParamByName('_name').Value := Trim(txt_name.Text);
ParamByName('_name_khanevadegi').Value := Trim(txt_name_khanevadegi.Text);
ParamByName('_name_pedar').Value := Trim(txt_name_pedar.Text);
ParamByName('_tarikh_tavalod').Value := Trim(txt_tarikh_tavalod.Text);
ParamByName('_tahsilat').Value := Trim(cmb_tahsilat.Text);
ParamByName('_vaziyat_taahol').Value := Trim(cmb_vaziyat_taahol.Text);
ParamByName('_noe_bimeh').Value := Trim(cmb_noe_bime.Text);
ParamByName('_gorooh_khoon').Value := Trim(cmb_gorooh_khoon.Text);
ParamByName('_rezayat_dahandeh').Value := Trim(txt_rezayat_dahande.Text);
ParamByName('_shoghl').Value := Trim(txt_shoghl.Text);
ParamByName('_address').Value := Trim(txt_adress.Text);
ParamByName('_telphone').Value := Trim(txt_tel.Text);
ExecProc;
End;
問候
該存儲過程運行在MySql WithOut任何問題,但當發送德爾福參數sp,我得到錯誤! –
@hamedkamrava - 絕對應該是錯誤。 '_code_ehda_konandeh'必須是過程的輸入參數,'code_ehda_konandeh',*沒有下劃線作爲前綴*,是列名稱。我對錯誤堆棧跟蹤有疑問。向我們展示'desc bimar'的結果。 –
@Ravinder - 我用_前綴定義了輸入參數。我不知道,我必須這樣做! –