使用C#连接到Mysql数据库-需要一些数据集编辑我显然不明白如何做到这一点。给出例子后,我决定多看书,尝试用给出的例子来解决。谢谢。编辑结束我想连接到mySql数据库,读取表/行,并将它们写入控制台。这段代码正确吗?我在VisualStudio2005中收到数据集错误。代码不是我的,是从互联网上获取的。我只是稍微修改了一下(变量名等)。如果您有好的教程,请发布链接。=)/*使用ADO.NET执行SELECT语句*/#regionUsingdirectivesusingSystem;使用系统数据;使用System.Data.SqlClient;使用MySql.Data.MySqlClient;#endregionnamespacetestConnect1{classSqlTest1{staticvoidMain(){stringconnectionString="server=localhostuserid=rootPassword=blankdatabase=test1";//连接字符串SqlConnectionmySqlConnection=newSqlConnection(connectionString);//创建连接字符串selectString="Selectfield01,field02,field03"+"FROMmyDataTable";//选择要访问的字段SqlCommandmySqlCommand=mySqlConnection.CreateCommand();mySqlCommand.CommandText=selectString;SqlDataAdaptermySqlDataAdapter=newSqlDataAdapter();mySqlDataAdapter.SelectCommand=mySqlCommand;数据集test1DataSet=newDataSet();//创建数据集mySqlConnection.Open();//打开连接Console.WriteLine("Retrievingrowsfromthetesttable");stringdataTableName="myDataTable";mySqlDataAdapter.Fill(test1DataSet,dataTableName);DataTablemyDataTable=test1DataSet.Tables[myDataTable];//我在这里得到一个错误foreach(DataRowmyDataRowinmyDataTable.Rows)//迭代表中的行{//Console.WriteLine("Field01")=+myDataRow[("field01")];//我不得不注释掉这个区域,因为也会出错,但这不是我现在的疑问//Console.WriteLine("Field02")=+myDataRow[("field02")];//Console.WriteLine("Field03")=+myDataRow[("field03")];}mySqlConnection.Close();//关闭连接}}}这是一个简单的您应该遵循的示例来纠正方法中的错误:SQLstuffdroptableifexistsusers;createtableusers(user_idintunsignednotnullauto_incrementprimarykey,usernamevarbinary(32)uniquenotnull)engine=innodb;insertintousers(username)values('f00'),('bar');C#DataAdapter方法注意我没有显式打开数据库连接——DataAdpater帮我做了这个以上就是C#学习教程:使用C#连接Mysql数据库-部分数据集的全部内容,需要分享。如果对大家有用,需要详细了解C#学习教程,希望大家多多关注——usingSystem;使用系统。使用System.Linq;使用系统文本;//使用MySql.Data添加这些;使用MySql.Data.MySqlClient;使用系统数据;namespacemysql{classProgram{staticvoidMain(string[]args){conststringDB_CONN_STR="Server=127.0.0.1;Uid=foo_dbo;Pwd=pass;Database=foo_db;";MySqlConnectioncn=newMySqlConnection(DB_CONN_STR);try{stringsqlCmd="select*fromusersorderbyuser_id";MySqlDataAdapteradr=newMySqlDataAdapter(sqlCmd,cn);adr.SelectCommand.CommandType=CommandType.Text;DataTabledt=newDataTable();adr.Fill(dt);//自动打开和关闭数据库连接!!(从池中获取)foreach(dt.Rows中的DataRowdr){Console.WriteLine(string.Format("user_id={0}",dr["user_id"].ToString()));}}catch(Exceptionex){Console.WriteLine("{oops-{0}",ex.Message);}最后{cn.Dis姿势();//将连接返回到池}Console.WriteLine("pressanykey...");控制台.ReadKey();}}}C#DataReader示例usingSystem;使用System.Collections.Generic;使用System.Linq;使用系统文本;//使用MySql.Data添加这些;使用MySql.Data.MySqlClient;使用系统数据;namespacemysql{classProgram{staticvoidMain(string[]args){conststringDB_CONN_STR="Server=127.0.0.1;Uid=foo_dbo;Pwd=pass;Database=foo_db;";MySqlConnectioncn=newMySqlConnection(DB_CONN_STR);try{stringsqlCmd="select*fromusersorderbyuser_id";cn.打开();//必须显式打开连接(从池中获取)MySqlCommandcmd=newMySqlCommand(sqlCmd,cn);cmd.CommandType=CommandType.Text;MySqlDataReaderrdr=cmd.ExecuteReader();while(rdr.Read()){Console.WriteLine(string.Format("user_id={0}",rdr["user_id"].ToString()));}}catch(Exceptionex){Console.WriteLine("{oops-{0}",ex.Message);}最后{cn.Dispose();//返回与池的连接}Console.WriteLine("pressanykey...");控制台.ReadKey();}}}本文收集自网络,不代表立场。如涉及侵权,请点击右侧联系管理员删除。如有转载请注明出处:
