一个云主机怎么挂两个网站,一流的苏州网站建设,公司官网是通过什么编辑,如何修改wordpress模板【 声明#xff1a;版权所有#xff0c;欢迎转载#xff0c;请勿用于商业用途。 联系信箱#xff1a;feixiaoxing 163.com】 前面我们学习了数据库sqlite#xff0c;不过这是一种小型的数据库#xff0c;作为内部使用还可以。但是#xff0c;如果要与外面的其他供应商进…【 声明版权所有欢迎转载请勿用于商业用途。 联系信箱feixiaoxing 163.com】 前面我们学习了数据库sqlite不过这是一种小型的数据库作为内部使用还可以。但是如果要与外面的其他供应商进行联调的话最好还是采用sql server、oracle、mysql这样的数据库。鉴于前两种数据库都是商用数据库目前一般项目中mysql算是使用比较多的一种方案。所以今天我们也来介绍下mysql应该怎么访问和使用。 1、安装mysql软件 mysql有很多的版本建议大家可以选择一个长期支持的版本而不是最新发布的版本。 2、安装支持mysql的odbc软件 odbc可以看成是windows平台上面数据库的一个标准。各数据库厂家一般都会发布一个odbc的支持包。安装之后对于开发人员来说它只需要调用windows官方提供的的odbc接口就能够操作各家的数据库了。当然安装的时候一定要注意odbc的版本要和mysql的版本相匹配。 3、安装navicat navicat是一个很好用的数据库管理工具。之前也提到过这个工具。通过它可以连接mysql创建一个member数据库再创建一个person数据表。 4、准备测试界面 既然是c# wpf要用到mysql接下来我们可以准备一个测试界面。当然界面不需要很复杂只需要增、删、改、查四个按钮就可以事实上我们确实也是这么做的
Window x:ClassWpfApp.MainWindowxmlnshttp://schemas.microsoft.com/winfx/2006/xaml/presentationxmlns:xhttp://schemas.microsoft.com/winfx/2006/xamlxmlns:dhttp://schemas.microsoft.com/expression/blend/2008xmlns:mchttp://schemas.openxmlformats.org/markup-compatibility/2006xmlns:localclr-namespace:WpfAppmc:IgnorabledTitleMySQL WPF Demo Height450 Width800GridStackPanel Margin10!-- 查询数据按钮 --Button ContentFetch Data Height40 ClickFetchDataButton_Click Margin0,0,0,10/!-- 插入数据按钮 --Button ContentInsert Data Height40 ClickInsertDataButton_Click Margin0,0,0,10/!-- 更新数据按钮 --Button ContentUpdate Data Height40 ClickUpdateDataButton_Click Margin0,0,0,10/!-- 删除数据按钮 --Button ContentDelete Data Height40 ClickDeleteDataButton_Click Margin0,0,0,10/!-- 在这里添加显示数据的控件例如TextBlock、TextBox等 --/StackPanel/Grid
/Window转换成界面的话就是这个样子 5、编写代码 编写代码部分其实和之前的sqlite有点类似。唯一不同的部分就是需要在开始的时候把odbc的命名空间加上这样我们就可以使用相关函数了。整体的代码内容不复杂大家可以自己阅读一下。另外每次操作之后不管是顺利出错还是正常执行都会弹出一个对话框提示一下。
using System;
using System.Collections.Generic;
using System.Data;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows;
using System.Windows.Controls;
using System.Windows.Data;
using System.Windows.Documents;
using System.Windows.Input;
using System.Windows.Media;
using System.Windows.Media.Imaging;
using System.Windows.Navigation;
using System.Windows.Shapes;using System.Data.Odbc;namespace WpfApp
{/// summary/// MainWindow.xaml 的交互逻辑/// /summarypublic partial class MainWindow : Window{// connect stringstring ConnectionString Driver{MySQL ODBC 5.2 Unicode Driver};Server127.0.0.1;Databasemember;Userroot;Password123456;;public MainWindow(){InitializeComponent();}// read operationprivate void FetchDataFromDatabase(){try{using (OdbcConnection connection new OdbcConnection(ConnectionString)){connection.Open();string query SELECT * FROM Person;using (OdbcCommand command new OdbcCommand(query, connection)){using (OdbcDataReader reader command.ExecuteReader()){while (reader.Read()){string Value1 reader[Id].ToString();string Value2 reader[Name].ToString();string Value3 reader[Age].ToString();// todo, show your data to widget}}}connection.Close();}MessageBox.Show(Data fetch successfully.);}catch (Exception ex){MessageBox.Show($Error: {ex.Message});}}// insert operationprivate void InsertDataToDatabase(){try{using (OdbcConnection connection new OdbcConnection(ConnectionString)){connection.Open();// execute insertstring query $INSERT INTO Person (Name, Age) VALUES (Mike, 30);using (OdbcCommand command new OdbcCommand(query, connection)){command.ExecuteNonQuery();}connection.Close();}MessageBox.Show(Data inserted successfully.);}catch (Exception ex){MessageBox.Show($Error: {ex.Message});}}// update operationprivate void UpdateDataInDatabase(){try{using (OdbcConnection connection new OdbcConnection(ConnectionString)){connection.Open();// execute updatestring query $UPDATE Person SET Age 50 WHERE Name Mike;using (OdbcCommand command new OdbcCommand(query, connection)){command.ExecuteNonQuery();}connection.Close();}MessageBox.Show(Data updated successfully.);}catch (Exception ex){MessageBox.Show($Error: {ex.Message});}}// delete operationprivate void DeleteDataFromDatabase(){try{using (OdbcConnection connection new OdbcConnection(ConnectionString)){connection.Open();// execute deletestring query $DELETE FROM Person WHERE Name Mike;using (OdbcCommand command new OdbcCommand(query, connection)){command.ExecuteNonQuery();}connection.Close();}MessageBox.Show(Data deleted successfully.);}catch (Exception ex){MessageBox.Show($Error: {ex.Message});}}// read button callbackprivate void FetchDataButton_Click(object sender, RoutedEventArgs e){FetchDataFromDatabase();}// insert button callbackprivate void InsertDataButton_Click(object sender, RoutedEventArgs e){InsertDataToDatabase();}// update button callbackprivate void UpdateDataButton_Click(object sender, RoutedEventArgs e){UpdateDataInDatabase();}// delete button callbackprivate void DeleteDataButton_Click(object sender, RoutedEventArgs e){DeleteDataFromDatabase();}}
} 6、编译和测试 界面和代码都没有问题的话就可以直接运行测试了。可以按照增加、查找、更新、删除这样的顺序来进行测试。同时测试的时候还可以搭配navicat一起进行double check一下。