Mysql 错误System.ArgumentException关键字不受支持。c++;

Mysql 错误System.ArgumentException关键字不受支持。c++;,mysql,c++-cli,Mysql,C++ Cli,我试图制作一个程序来连接我的MySQL数据库并更改其中的信息。但当我尝试插入一些命令时,我得到了错误 System.Data.dll中类型为“System.ArgumentException”的未处理异常 其他信息:不支持关键字。 namespace Pro4 { using namespace System; using namespace System::ComponentModel; using namespace System::Collections; using namespace

我试图制作一个程序来连接我的MySQL数据库并更改其中的信息。但当我尝试插入一些命令时,我得到了错误

System.Data.dll中类型为“System.ArgumentException”的未处理异常 其他信息:不支持关键字。

namespace Pro4 {

using namespace System;
using namespace System::ComponentModel;
using namespace System::Collections;
using namespace System::Windows::Forms;
using namespace System::Data;
using namespace System::Drawing;
using namespace MySql::Data::MySqlClient;

/// <summary>
/// Сводка для MyForm
/// </summary>
public ref class MyForm : public System::Windows::Forms::Form
{
public:
    MyForm(void)
    {
        InitializeComponent();
        //
        //TODO: добавьте код конструктора
        //
    }

protected:
    /// <summary>
    /// Освободить все используемые ресурсы.
    /// </summary>
    ~MyForm()
    {
        if (components)
        {
            delete components;
        }
    }
private: System::Windows::Forms::TextBox^  txtQuery;
protected:

protected:
private: System::Windows::Forms::Button^  button1;

private:
    /// <summary>
    /// Требуется переменная конструктора.
    /// </summary>
    System::ComponentModel::Container ^components;
#pragma region Windows Form Designer generated code
    /// <summary>
    /// Обязательный метод для поддержки конструктора - не изменяйте
    /// содержимое данного метода при помощи редактора кода.
    /// </summary>
    void InitializeComponent(void)
    {
        this->txtQuery = (gcnew System::Windows::Forms::TextBox());
        this->button1 = (gcnew System::Windows::Forms::Button());
        this->SuspendLayout();
        // 
        // txtQuery
        // 
        this->txtQuery->Location = System::Drawing::Point(12, 12);
        this->txtQuery->Multiline = true;
        this->txtQuery->Name = L"txtQuery";
        this->txtQuery->Size = System::Drawing::Size(823, 269);
        this->txtQuery->TabIndex = 0;
        // 
        // button1
        // 
        this->button1->Location = System::Drawing::Point(715, 287);
        this->button1->Name = L"button1";
        this->button1->Size = System::Drawing::Size(120, 40);
        this->button1->TabIndex = 1;
        this->button1->Text = L"Run";
        this->button1->UseVisualStyleBackColor = true;
        this->button1->Click += gcnew System::EventHandler(this, 
&MyForm::button1_Click);
        // 
        // MyForm
        // 
        this->AutoScaleDimensions = System::Drawing::SizeF(8, 16);
        this->AutoScaleMode = System::Windows::Forms::AutoScaleMode::Font;
        this->ClientSize = System::Drawing::Size(847, 531);
        this->Controls->Add(this->button1);
        this->Controls->Add(this->txtQuery);
        this->Name = L"MyForm";
        this->Text = L"MyForm";
        this->ResumeLayout(false);
        this->PerformLayout();

    }
#pragma endregion
private: System::Void button1_Click(System::Object^  sender, System::EventArgs^  e) {
    String^ SQLQuery = txtQuery->Text;
    String^ connectionInfo = "datasourse=localhost;port=3307;username=root;password=1qa2ws3ed;database=labeng";
    MySqlConnection^ conn= gcnew MySqlConnection(connectionInfo);
    MySqlCommand^ connCmd = gcnew MySqlCommand(SQLQuery, conn);
    MySqlDataReader^ dataReader;

    try{
        conn->Open();
        dataReader = connCmd->ExecuteReader();
        //MessageBox::Show("Command is done");
    }
    catch (Exception^ex){
        MessageBox::Show(ex->Message);
    }

}
};
}
namespace Pro4{
使用名称空间系统;
使用名称空间System::ComponentModel;
使用名称空间系统::集合;
使用命名空间System::Windows::Forms;
使用名称空间System::Data;
使用名称空间系统::绘图;
使用名称空间MySql::Data::MySqlClient;
/// 
///СаааааMyForm
/// 
公共引用类MyForm:public System::Windows::Forms::Form
{
公众:
我的表格(作废)
{
初始化组件();
//
//待办事项:бббббббббббб
//
}
受保护的:
/// 
/// Освободить все используемые ресурсы.
/// 
~MyForm()
{
if(组件)
{
删除组件;
}
}
private:System::Windows::Forms::TextBox^txtQuery;
受保护的:
受保护的:
私有:系统::Windows::窗体::按钮^button1;
私人:
/// 
/// Требуется переменная конструктора.
/// 
系统::组件模型::容器^组件;
#pragma区域Windows窗体设计器生成的代码
/// 
/// Обязательный метод для поддержки конструктора - не изменяйте
/// содержимое данного метода при помощи редактора кода.
/// 
void初始化组件(void)
{
这->txtQuery=(gcnewsystem::Windows::Forms::TextBox());
此->按钮1=(gcnew System::Windows::Forms::Button());
此->SuspendLayout();
// 
//txtQuery
// 
此->txtQuery->位置=系统::绘图::点(12,12);
此->txtQuery->多行=true;
此->txtQuery->Name=L“txtQuery”;
这个->txtQuery->大小=系统::绘图::大小(823269);
this->txtQuery->TabIndex=0;
// 
//按钮1
// 
此->按钮1->位置=系统::图纸::点(715287);
此->按钮1->名称=L“按钮1”;
该->按钮1->尺寸=系统::图纸::尺寸(120,40);
此->按钮1->选项卡索引=1;
此->按钮1->文本=L“运行”;
此->按钮1->UseVisualStyleBackColor=true;
此->按钮1->单击+=gcnew System::EventHandler(此,
&MyForm::按钮1(单击);
// 
//MyForm
// 
这->自动缩放尺寸=系统::图纸::尺寸(8,16);
这->AutoScaleMode=System::Windows::Forms::AutoScaleMode::Font;
这->ClientSize=System::Drawing::Size(847531);
此->控制->添加(此->按钮1);
此->控制->添加(此->txtQuery);
此->名称=L“MyForm”;
此->文本=L“MyForm”;
此->恢复布局(错误);
此->执行布局();
}
#布拉格端区
私有:系统::无效按钮1\u单击(系统::对象^sender,系统::事件参数^e){
字符串^SQLQuery=txtQuery->Text;
String^connectionInfo=“datasource=localhost;port=3307;username=root;password=1qa2ws3ed;database=labeng”;
MySqlConnection ^conn=gcnewmysqlconnection(connectionInfo);
MySqlCommand ^connCmd=gcnewmysqlcommand(SQLQuery,conn);
MySqlDataReader^dataReader;
试一试{
conn->Open();
dataReader=connCmd->ExecuteReader();
//MessageBox::Show(“命令完成”);
}
捕获(异常^ex){
MessageBox::Show(ex->Message);
}
}
};
}

请不要太严格,这对我来说是新的

标准警告:虽然可以使用C++/CLI编写应用程序的主体,甚至可以使用WinForms在C++/CLI中编写GUI,但不建议这样做。C++/CLI是用于互操作场景的:C++或其他.NET代码需要与非托管C++接口,C++/CLI可以提供两者之间的转换。对于主要开发,如果需要托管代码,则建议使用Cype或WiFrm或WPF,或者如果您想要非托管的,则使用MFC C++。
也就是说

String^ connectionInfo = "datasourse=localhost;port=3307;username=root;password=1qa2ws3ed;database=labeng";

根据,连接字符串应该包含
server=localhost
,而不是
datasource=localhost

标准警告:虽然可以使用C++/CLI编写应用程序的主体,甚至可以使用WinForms在C++/CLI中编写GUI,但不建议这样做。C++/CLI是用于互操作场景的:C++或其他.NET代码需要与非托管C++接口,C++/CLI可以提供两者之间的转换。对于主要开发,如果需要托管代码,则建议使用Cype或WiFrm或WPF,或者如果您想要非托管的,则使用MFC C++。
也就是说

String^ connectionInfo = "datasourse=localhost;port=3307;username=root;password=1qa2ws3ed;database=labeng";

根据,连接字符串应该包含
server=localhost
,而不是
datasource=localhost

在将来,请不要将所有GUI代码都转储到问题中,请确切说明哪一行引发了异常。请不要让我们搜索或猜测:搜索所有代码以找到感兴趣的部分,或者猜测哪一行给出了异常。将来,请不要将所有GUI代码都转储到问题中,请确切说出哪一行抛出了异常。请不要让我们搜索或猜测:搜索所有代码以找到感兴趣的位,或猜测哪一行出现异常。谢谢,这是关于您的警告的工作:我下次将遵循此警告谢谢,这是关于您的警告的工作:我下次将遵循此警告