【问题标题】:INSERT query actually didn't insert any dataINSERT 查询实际上没有插入任何数据
【发布时间】:2020-02-15 11:13:42
【问题描述】:

目前,我正在为一家商店做一个项目。我遇到的问题是“INSERT”查询实际上并没有插入任何东西。

try-catch 没有发现任何问题,这增加了我的困惑。我也调试了代码,没有发现异常。

koneksi.Open();             
MySqlCommand masuk = new MySqlCommand(a, koneksi);
masuk.CommandType = CommandType.StoredProcedure;

Random utk_id = new Random();
int panggil_acak = utk_id.Next();

masuk.Parameters.AddWithValue("_id_transaksi", Convert.ToString(panggil_acak));
masuk.Parameters.AddWithValue("_id_barang", Convert.ToString(id.Text));
masuk.Parameters.AddWithValue("_nama_barang", Convert.ToString(nama.Text));
masuk.Parameters.AddWithValue("_harga_satuan", Convert.ToString(harga.Text));
masuk.Parameters.AddWithValue("_jumlah_barang", Convert.ToString(jmlh_brg_beli.Text));
masuk.Parameters.AddWithValue("_diskon", Convert.ToString(diskon_rp.Text));
masuk.Parameters.AddWithValue("_harga_total", Convert.ToString(harga_barang_total.Text));
masuk.Parameters.AddWithValue("_tgl_transaksi", Convert.ToString(DateTime.Now.ToString()));

//execute command
masuk.ExecuteNonQuery();
clear text area and refresh data grid
rstArea();
isiDgrid();

该命令是一个存储过程,应用程序没有给出错误反馈。

CREATE DEFINER=`root`@`localhost` PROCEDURE `belanjaTemp_add`(
_id_transaksi varchar(20),
_id_barang varchar(10),
_nama_barang varchar(255),
_harga_satuan varchar(10),
_jumlah_barang varchar(10),
_diskon varchar(45),
_harga_total varchar(10),
_tgl_transaksi varchar(45)
)
BEGIN
if(_id_transaksi = 0)
then
insert into komodo.penjualan_temp
(id_transaksi, id_barang, nama_barang, harga_satuan, jumlah_barang, diskon, harga_total, tgl_transaksi)
values
(_id_transaksi, _id_barang, _nama_barang, _harga_satuan, _jumlah_barang, _diskon, _harga_total, _tgl_transaksi);
END if;
END

我预计数据库会更新,但它没有更新。 成功确认截图: https://ibb.co/b26YdBY

我的问题:我如何设法插入数据?

【问题讨论】:

  • 请不要发布指向您需要帮助的外部代码的链接,请更新您的帖子以包含此信息。我会假设您成功连接到数据库正确吗?
  • 可以在代码之外执行查询吗?如果不是,那么问题出在查询上。
  • @codexer : 数据库连接成功
  • @JohnPete22 : 我可以在代码之外执行它
  • 好的,那么它可能是代码。数据库的用户是否有权更新数据,而不仅仅是读取?

标签: c# mysql-workbench


【解决方案1】:

尝试使用ExecuteStoredProcedure() 而不是ExecuteNonQuery()

【讨论】:

  • ExecuteNonQuery 没问题,只要将命令指定为CommandType.StoredProcedure
猜你喜欢
  • 2014-08-18
  • 2012-11-22
  • 2011-02-16
  • 2013-12-28
  • 1970-01-01
  • 2022-11-20
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多