为什么我没有收到任何错误但是数据库没有插入记录?

蒂尔南·沃森

我正在尝试在C#的控件中向数据库添加记录:

public partial class ctrl_Register : UserControl
{
    public ctrl_Register()
    {
        InitializeComponent();
    }

    private void btn_reg_Click(object sender, EventArgs e)
    {
        bool ok = false;
        int col = 1;
        if (tBox_username.Text != "")
        {
            if (tBox_password.Text != "")
            {
                if (cBox_colour.Text != "")
                {
                    ok = true;
                }
            }
        }

        if (ok)
        {
            using (SqlConnection conn = new SqlConnection(Properties.Settings.Default.data2cString))
            {
                using (SqlCommand cmd = new SqlCommand())
                {
                    cmd.Connection = conn;
                    cmd.CommandType = CommandType.Text;
                    cmd.CommandText = @"INSERT INTO [Table](Id,username,password,colour,bestTime) VALUES ('"+tBox_username.Text+"','"+tBox_password.Text+"','"+cBox_colour.Text+"')";

                    try
                    {
                        conn.Open();
                        cmd.ExecuteNonQuery();
                        MessageBox.Show("added");
                    }
                    catch (SqlException s)
                    {
                        MessageBox.Show(s.Message.ToString(), "Error Message");
                    }
                }
            }
        }
        else
        {
            MessageBox.Show("no insert");
        }
    }
}

出现消息框“已添加”,因此代码肯定到了这一点。但是,当我检查数据库时,没有新记录。

这是我的创建表代码:

CREATE TABLE [dbo].[Table] 
(
    [Id]       INT          IDENTITY (0, 1) NOT NULL,
    [username] VARCHAR (50) NOT NULL,
    [password] VARCHAR (50) NOT NULL,
    [colour]   VARCHAR (50) DEFAULT ('Orange') NULL,
    [bestTime] INT          DEFAULT ((0)) NULL,
    PRIMARY KEY CLUSTERED ([Id] ASC)
);

绝对是设置文件中正确的连接字符串。但是,当我转到data2.mdf数据库浏览器中文件并转到表的“显示数据”时,仅显示NULL。

marc_s

您没有显示连接字符串-但由于您要说的是“转到Data2.mdf服务器资源管理器中文件,因此我认为您可能正在使用一种AttachDbFileName=方法。

整个AttachDbFileName =方法有缺陷-充其量!在Visual Studio中运行应用程序时,它将在.mdf文件周围复制(从App_Data目录复制到输出目录-通常.\bin\debug-应用程序运行所在的目录),最有可能的是,您的INSERT工作还不错-但您只是看错了。 mdf文件到底!

如果您要坚持使用这种方法,请尝试在myConnection.Close()呼叫上设置一个断点-然后.mdf使用SQL Server Mgmt Studio Express检查该文件-我几乎可以确定您的数据在那里。

真正的解决办法在我看来,将

  1. 安装SQL Server Express(并且您已经完成了此操作)

  2. 安装SQL Server Management Studio Express

  3. SSMS Express中创建数据库,并为其指定一个逻辑名称(例如Data2

  4. 使用其逻辑数据库名称(在服务器上创建时提供)连接到该数据库-并不要弄乱物理数据库文件和用户实例。在这种情况下,您的连接字符串将类似于:

    Data Source=.\\SQLEXPRESS;Database=Data2;Integrated Security=True
    

    和其他一切是完全相同像以前一样...

另请参阅亚伦·贝特兰德(Aaron Bertrand)出色的博客文章不良习惯:使用AttachDbFileName获取更多背景信息。

而且:永远不要将这样的SQL命令串联在一起-这只是在请求脚本小子来探索SQL注入来攻击您的站点。使用参数化查询-始终,不例外。

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

为什么我的客户没有收到任何字节?

来自分类Dev

我没有收到任何错误,但是数字没有添加到JTextField中

来自分类Dev

我没有收到任何错误,但是数字没有添加到JTextField中

来自分类Dev

我的PDO插入没有错误...但是没有插入到我的数据库中

来自分类Dev

为什么getchar()没有收到任何输入?

来自分类Dev

试图mysqli_query插入我的数据库。没有收到错误

来自分类Dev

TcpListener 没有收到任何数据

来自分类Dev

为什么我的数据没有被插入到我的数据库中

来自分类Dev

为什么我的代码没有在mysql中将数据插入数据库?

来自分类Dev

为什么我的代码没有将数据插入数据库?

来自分类Dev

为什么我没有得到任何输出?

来自分类Dev

为什么我没有得到任何输出

来自分类Dev

为什么我没有得到任何输出

来自分类Dev

为什么我的Moq数据库对象没有任何结果

来自分类Dev

不知道为什么帖子没有插入我的数据库

来自分类Dev

为什么我的字符串“ N / A”没有插入数据库?

来自分类Dev

为什么集合没有我的数据库对象?

来自分类Dev

为什么我的数据库没有更新?

来自分类Dev

为什么ampps没有选择我的数据库?

来自分类Dev

我正在尝试使用useEffect'来更改窗口。我没有收到任何错误,但是没有用。怎么了?如何使其运作?

来自分类Dev

从Bootstrap框架发送电子邮件我的错误是我收到消息是邮件发送成功,但是我没有收到任何邮件

来自分类Dev

为什么我没有从我的 TCP 服务器和客户端收到任何消息?

来自分类Dev

我的python代码没有将数据插入数据库。我不知道为什么?

来自分类Dev

我的python代码没有将数据插入数据库。我不知道为什么?

来自分类Dev

为什么我的Meteor用户对象中没有收到任何电子邮件地址?

来自分类Dev

为什么我在解析数据帧时收到错误,但单行却没有收到错误?

来自分类Dev

PHP代码不会更新数据库,没有sql错误,我的IDE也没有返回错误,但是数据库没有更新

来自分类Dev

为什么我没有得到任何输出,对于我在链表中插入的代码?

来自分类Dev

尝试插入数据库,但没有任何反应

Related 相关文章

  1. 1

    为什么我的客户没有收到任何字节?

  2. 2

    我没有收到任何错误,但是数字没有添加到JTextField中

  3. 3

    我没有收到任何错误,但是数字没有添加到JTextField中

  4. 4

    我的PDO插入没有错误...但是没有插入到我的数据库中

  5. 5

    为什么getchar()没有收到任何输入?

  6. 6

    试图mysqli_query插入我的数据库。没有收到错误

  7. 7

    TcpListener 没有收到任何数据

  8. 8

    为什么我的数据没有被插入到我的数据库中

  9. 9

    为什么我的代码没有在mysql中将数据插入数据库?

  10. 10

    为什么我的代码没有将数据插入数据库?

  11. 11

    为什么我没有得到任何输出?

  12. 12

    为什么我没有得到任何输出

  13. 13

    为什么我没有得到任何输出

  14. 14

    为什么我的Moq数据库对象没有任何结果

  15. 15

    不知道为什么帖子没有插入我的数据库

  16. 16

    为什么我的字符串“ N / A”没有插入数据库?

  17. 17

    为什么集合没有我的数据库对象?

  18. 18

    为什么我的数据库没有更新?

  19. 19

    为什么ampps没有选择我的数据库?

  20. 20

    我正在尝试使用useEffect'来更改窗口。我没有收到任何错误,但是没有用。怎么了?如何使其运作?

  21. 21

    从Bootstrap框架发送电子邮件我的错误是我收到消息是邮件发送成功,但是我没有收到任何邮件

  22. 22

    为什么我没有从我的 TCP 服务器和客户端收到任何消息?

  23. 23

    我的python代码没有将数据插入数据库。我不知道为什么?

  24. 24

    我的python代码没有将数据插入数据库。我不知道为什么?

  25. 25

    为什么我的Meteor用户对象中没有收到任何电子邮件地址?

  26. 26

    为什么我在解析数据帧时收到错误,但单行却没有收到错误?

  27. 27

    PHP代码不会更新数据库,没有sql错误,我的IDE也没有返回错误,但是数据库没有更新

  28. 28

    为什么我没有得到任何输出,对于我在链表中插入的代码?

  29. 29

    尝试插入数据库,但没有任何反应

热门标签

归档