问答文章1 问答文章501 问答文章1001 问答文章1501 问答文章2001 问答文章2501 问答文章3001 问答文章3501 问答文章4001 问答文章4501 问答文章5001 问答文章5501 问答文章6001 问答文章6501 问答文章7001 问答文章7501 问答文章8001 问答文章8501 问答文章9001 问答文章9501

C#编写学生管理系统 与数据库连接 要求数据库用MY SQL

发布网友 发布时间:2022-04-23 12:34

我来回答

5个回答

懂视网 时间:2022-04-10 04:19

虽说非常easy。但还是应该总结一些问题。

一路的坎坷仅仅能如今表达了。 以下就是一些问题以及过程: 最重要的问题可能就是sql语句了。今天弄了好久的sql语句中的错误。
一、我们须要先来总结我们的sql几个语句:
推断表是否存在: 方法: ResultSet getTables(String catalog,String schemaPattern,String tableNamePattern,String[] types)
參数: catalog - 类别名称,由于存储在数据库中,所以它必须匹配类别名称。

该參数为 "" 则检索没有类别的描写叙述。为 null 则表示该类别名称不应用于缩小搜索范围
schemaPattern - 模式名称的模式,由于存储在数据库中,所以它必须匹配模式名称。该參数为 "" 则检索那些没有模式的描写叙述,为 null 则表示该模式名称不应用于缩小搜索范围
tableNamePattern - 表名称模式。由于存储在数据库中。所以它必须匹配表名称
types - 要包含的表类型组成的列表,null 表示返回全部类型 
返回:
ResultSet - 每一行都是一个表描写叙述


以下是代码: DatabaseMetaData meta = con.getMetaData();  ResultSet rsTable = meta.getTables(null, null, this.Clazz.getSimpleName(), null); if(rsTable.next()){     表存在 }

推断完表后,我们就该做做下一步:假设没表,新建。添数据: 新建表的语句: CREAT TABLE tablename (id varchar(255) , age int(255)) 后面的參数是    :      你的变量名 变量类型(变量长度) , ......
加入数据的语句: insert into tablename (id , age) values (1,1) 这里就不具体解释了
其它的连接数据库直接上代码: //----------------------------- 连接数据库 --------------------------------------//  public Connection ConnectingMysql() throws SQLException{   String drivename = "com.mysql.jdbc.Driver";   String url = "jdbc:mysql://localhost:3306/dbhouse";   String userName = "root";//mysqlusername   String password = "root";//mysql用户密码   try {    Class.forName(drivename);   } catch (ClassNotFoundException e) {    // TODO Auto-generated catch block    e.printStackTrace();   }   connection = DriverManager.getConnection(url, userName, password);   return connection;  }  //---------------------------------------------------------------------------------------//

还有个值得注意的地方: 关于最后运行sql语句的时候,statement这个接口下的三个带execute的方法,非常easy混淆。 mysql 中execute、executeQuery和executeUpdate之间的差别: http://blog.csdn.net/error/404.html?from=http%3a%2f%2fblog.csdn.net%2fmon_key_dt%2farticle%2fdetails%2f40516043
二、关于反射传递的数据 首先传入的是我要保存的对象名,通过newinstance()方法取出我的对象 Object object = this.Clazz.newInstance();
再来就是循环输出对象中的变量名和变量类型,提示输入 for (Field field : this.Clazz.getDeclaredFields()) System.out.println("please input "+field.getName()+"("+field.getType().getSimpleName()+"):");     String valueString = scanner.nextLine(); //输入数据     Object value = null;         if(field.getType().equals(String.class)) //推断数据类型     {      value = valueString;     } ......还有非常多其它的类型推断我就不贴在这里了
每次输入完毕,保存对象信息 field.set(object, value);   最后。保存数据给全局变量,以便最后传给数据库做准备 dataName += field.getName() + ","; //全部数据的名字     if(field.getType().equals(Integer.class) || field.getType().equals(int.class)){      data[dataLength ++] = field.getName() + " int(255),"; //为数据库的creat table 做准备      dataType += "int,"; //数据类型      System.out.println("datatype : " + dataType);      dataValue += valueString + ","; //数据值      System.out.println("datavalue : " + dataValue);     }     else {      data[dataLength ++] = field.getName() + " varchar(255),";      dataType += "varchar,";      System.out.println("datatype : " + dataType);      dataValue += valueString + ",";      System.out.println("datavalue : " + dataValue);     }
到这里。基本就已经完毕了。数据库中的insert 以及create table 也直接上代码 不上台面的方法大家就睁一仅仅眼闭一仅仅眼吧。
//新建表    String tableMessage = "";    for(int i = 0 ; i < dataLength ; i++){     tableMessage += data[i];    }    String sql_newTable = "CREATE TABLE " + this.Clazz.getSimpleName() + "("      + tableMessage.substring(0, tableMessage.length() - 1) + ")";    System.out.println(sql_newTable);        statement.execute(sql_newTable);    //插入数据    String sql_add = "insert into " + this.Clazz.getSimpleName() + "("      + dataName.substring(0, dataName.length() - 1) + ") "//变量名      + "values(" + dataValue.substring(0, dataValue.length() - 1) +")";//(?

,?,?,?

)

   System.out.println(sql_add);    statement.executeUpdate(sql_add);

小白一枚,有错之处希望大家及时帮我改正。

用反射完毕学生管理系统(包含数据库连接)

标签:get   simple   ada   catch   cal   长度   类别   statement   turn   

热心网友 时间:2022-04-10 01:27

举一个简单的例子:
public class DBOperate
{
static SqlConnection sqlConnection=new SqlConnection

(System.Configuration.ConfigurationSettings.AppSettings["ConnectionString"]);

public DBOperate()
{

}

//执行SQL语句,如Select
public static DataTable Select(string sql)
{
try
{
SqlDataAdapter sqlAdapter1 = new SqlDataAdapter(sql,

sqlConnection);
DataSet returns = new DataSet();
sqlAdapter1.Fill(returns);
return returns.Tables[0];
}
catch (Exception ex)
{
throw (ex);
}
finally
{
sqlConnection.Close();
}
}

//执行SQL语句,如UPDATE,INSERT等
public static void ExcSQL(string sql)
{
try
{
SqlCommand sqlCmd =new SqlCommand(sql,sqlConnection);
//if(sqlConnection.State.ToString() == "closed")
sqlConnection.Open();
sqlCmd.ExecuteNonQuery();
}
catch (Exception ex)
{
ex.ToString();
}
finally
{
sqlConnection.Close();
}
}
}

热心网友 时间:2022-04-10 02:45

可以借助Bai Hi示意我
有时间可能完成你所面临的任务
差不多的要求也可能示意我
C#编写学生管理** 与数据库连接 要求数据库用MY SQL
ES:\\15BC70F9255B56B8825A6FE2D5407EDA

热心网友 时间:2022-04-10 04:20

把oledb.oledbconnection 加到窗体中,你设置connectstring属性时有个向导,然后把结果复制出来,你就知道了,这算授您以渔吧。

热心网友 时间:2022-04-10 06:11

随便网上搜索都有。。。去csdn或者51aspx下。
怎样使用C构建与MySQL的长连接cmysql长连接

一、连接MySQL数据库 我们需要将MySQL数据库连接到我们的C#应用程序中。在Visual Studio中,我们可以使用MySQL的.NET驱动程序实现连接。在NuGet包管理器中搜索MySQL Connector/NET即可安装下载。安装完成后,在C#代码中加入以下命名空间即可使用MySQL:using MySql.Data.MySqlClient;二、建立长连接 接下来,我...

非结构化数据如何可视化呈现?

通常情况下,我们会按照结构模型把系统产生的数据分为三种类型:结构化数据、半结构化数据和非结构化数据。结构化数据,即行数据,是存储在数据库里,可以用二维表结构来逻辑表达实现的数据。最常见的就是数字数据和文本数据,它们可以某种标准...

c#怎么连接数据库 用MySQL 详解

1、mysql官网下载 .net连接器 2、引用下载后的mysql.data.dll 3、程序开始加:using MySql.Data.MySqlClient;4、连接数据库:private void button1_Click(object sender, EventArgs e)//登入按钮 { string power = comboBox1.Text.Trim(); string user = textBox1.Text.Trim(); str...

如何在C#中创建并使用MySql数据库

打开你的项目 在项目上右键,选择 [管理 NuGet 程序包]在 [浏览] 选项卡中搜索 mysql 选择 MySql.Data, 在右侧勾选安装的项目后,点击 [安装] 按钮 相应的dll 就安装到项目了 var mssb = new MySqlConnectionStringBuilder();MySqlConnection sqlConnect = new MySqlConnection(mssb.ConnectionString)...

C#中连接MySql的字符串

在C#编程中,连接到MySQL数据库的步骤具体如下:首先,启动Visual Studio 2015的开发环境,创建一个新的Windows窗体应用程序项目。接着,访问MySQL官方网站获取数据库连接所需的DLL文件,下载后,确保将其放置在项目的引用文件夹中,以便后续引用。在窗体设计阶段,添加一个按钮,该按钮的功能是触发MySQL的...

C#链接MySQL数据库的实现步骤有哪些

C#连接数据库有以下几个步骤:1:使用配置的数据库连接串,创建数据库连接 Connection 对象2:构建操作的sql语句3:定义command对象4:打开数据连接5:执行命令举一个例子,删除操作 public class StudentService { //从配置文件中读取数据库连接字符串 private readonly static string connString ...

C#如何连接其他数据库,如MYSQL或者Postgresql

static string Sql="server=.;uid=名字;pwd=密码;database=你要连的数据库";private SqlConnection objSqlConnection = new SqlConnection(Sql);//以上是加载驱动你要连到的数据库 public int Update(string sql){ objSqlConnection.Open();SqlCommand objSqlCommand = new SqlCommand(sql,objSql...

本人目前在学c# ,但是学数据库该选择mysql还是sql server呢?

建议用sql server。无论你用mysql或者sql server 都差不多的,但是sql企业用的比较多点

c# .NET设计系统,数据库的问题??

要求是用C#,.net和sql设计一个图书管理系统,所以在开始也数据库部分时候,在spl查分分析器中,要写的数据库代码,除了建立一个数据库和它下面的要用到的表格外,还要再写什么其他东西... 要求是用C#,.net和sql设计一个图书管理系统,所以在开始也数据库部分时候,在spl查分分析器中,要写的数据库代码,除了建立一个...

C#连接MySql数据库的连接字符串是什么?

// 读取数据MySQLDataReader DBReader = DBComm.ExecuteReaderEx();// 显示数据try{while (DBReader.Read()){Console.WriteLine("Host = {0} and User = {1}", DBReader.GetString(0),DBReader.GetString(1));}}finally{DBReader.Close();DBConn.Close();} //关闭数据库连接DBConn.Close...

c#中连接mysql的字符串

连接MySQL数据库的C#字符串通常使用以下格式:Server=你的服务器地址;Database=你的数据库名;Uid=你的用户名;Pwd=你的密码;1. 服务器地址:这部分是MySQL数据库服务器所在的地址。如果数据库部署在本机上,可以使用“localhost”作为地址。如果部署在其他计算机或服务器上,则需要提供该计算机或服务器的...

SQL数据库学生管理系统 用数据库编写一个管理系统 学生管理系统数据库源代码 创建学生管理系统数据库 用数据库做个管理系统 数据库管理系统应用 java数据库管理系统 数据库管理系统代码 python数据库管理系统
声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com
苹果手机扣费限额在哪里修改? 黑茶和绿茶的功效区别,黑茶、绿茶功效简述 黑茶和绿茶哪个好 黑茶和绿茶的功效区别,二者功效各有侧重点! 订了陕西联通手机名片业务,一天内我三次或多次拨同一电话,系统是否会连 ... 陕西联通手机名片平台还有哪些业务附加费用? 什么是企业协同战略 吸烟指数中国吸烟市场及状况 我也想开家快递公司额,想向你取点经,需不需要自己的货车啊,还是用物流... 苹果手机怎么做到一边通话一边录音 怎样获得天津市私立中小学教师招聘信息? Error!: SQLSTATE[00000] [1040] Too many connections是什么意 ... 天津教师招聘每年都有么,有报过的么? 2020天津津南区幼儿园教师招聘薪资待遇如何? My eclipse连接数据库失败 Sqlstate :&#39;01000&#39; Sql server错误:53.........这是什么问题呀?求大虾指教... 十月初五的月光电影版张智霖最后讲的那句话是什么? 关于天津市小学教师招聘 SQL Error:1146,SQLState:42S02 异常怎么解决 十月初五的月光电影版的剧情是不是没头没尾? 2020天津中小学上半年教师资格报名时间是什么? 如何在表中记录mysql的SQLSTATE 十月初五的月光电影 文初会说话? 2020天津中小学上半年教师资格报名条件有哪些? 2020上半年天津中小学教师资格笔试时间是什么时候? 十月初五的月光电影版美玲扮演者是谁 十月初五的月光电视剧文初最后会讲话吗 天津教师招聘时间 港产电视剧《十月初五的月光》编剧是谁? 2020上半年天津中小学教师资格报名时间是什么时候? 求《十月初五的月光》国语版的百度网盘(&#x00B4;&#x30FB;_&#x30FB;`) 天津中小学校教师的应聘问题!请认真回答!谢谢! 天津中小学教师招聘时间,每年大概都是什么时候啊?具体的考试内容是什么?考不考有关教法的内容,另外考 My Sql 根据员工统计出报警的次数的查询 jdbc连接数据库my sql 后台java代码怎么写 您好,我想具体了解下天津教师招聘的报考资格? MySql中的error-code=&#39;1366&#39;, sqlstate=&#39;HY000&#39;错误 天津市津南区教师资格招聘招聘准考证什么时候2022年的中考证考试什么时... mysql错误日志, 谁能解决一下,谢谢了 教师招聘考试都考什么?天津的 请问教师招聘有年龄的限制么?我在天津 mysql 无法启动,带错误日志,请大神指教 mysql数据库事件调用有错误日志记录吗 如何查询mysql中是否表被锁 mybatis+mysql执行sql时会出现链接已关闭,但不是每次都会出现这种现象... SQLSTATE[HY000] [2003] Can&#39;t connect to MySQL server on &#39;localho... 从mysql读取出来的数据 想过滤部分内容输出 只保留后面的数字_百度知 ... ...SQLSTATE[HY000] [2003] Can&#39;t connect to MySQL server on &#39;127.0... SQLSTATE[HY000] [2003] Can&#39;t connect to MySQL server on &#39;192.168... Mybatis 执行sql 点歌机怎么连接到音响?