最新mysql数据库总结Word文件下载.docx
《最新mysql数据库总结Word文件下载.docx》由会员分享,可在线阅读,更多相关《最新mysql数据库总结Word文件下载.docx(11页珍藏版)》请在冰豆网上搜索。
DATABASE
database-name
(2)删除数据库
drop
database
dbname
(3)创建新表
table
tabname(col1
type1
[not
null]
[primary
key],col2
type2
null],..)
(4)删除新表
Droptabletablename;
(5)增加一个列
Alter
tabname
add
column
col
type
(6)添加主键:
primary
key(col)
(7)创建索引:
[unique]
index
idxname
on
tabname(col….)
删除索引:
idxname
(8)创建视图:
view
viewname
as
select
statement
删除视图:
viewname
(9)说明:
几个简单的基本的sql语句
选择:
*
from
table1
where
范围
插入:
insert
into
table1(field1,field2)
values(value1,value2)
删除:
delete
更新:
update
set
field1=value1
查找:
field1
like
’%value1%’
---like的语法很精妙
排序:
order
by
field1,field2
[desc]
总数:
count
totalcount
table1
求和:
sum(field1)
sumvalue
平均:
avg(field1)
avgvalue
最大:
max(field1)
maxvalue
最小:
min(field1)
minvalue
实际应用中,select语句使用比较频繁,而且也极为复杂,有时难以处理,需要在软件上采取其他方法。
2)C#中使用MySQLDriverCS连接MySQL数据库
MySQLDriverCS是MySQL提供的一种驱动连接包,在MySQLDriverCS安装文件夹下面找到MySQLDriver.dll,安装完成后将MySQLDriver.dll添加引用到项目中。
并时在程序命名空间中添加"
usingMySQLDriverCS;
"
即可。
值得注意的是,MySQL与数据库的连接次数不能过于频繁,即应该避免“短时间多次与数据库连接”,否则会出现exception。
(1)从数据库中读数据
ArrayListpidlist=newArrayList();
//建立链表对象
MySQLConnectionmc=newMySQLConnection();
mc=newMySQLConnection(newMySQLConnectionString(“localhost”,“mysql”,“root”,”password”).AsString);
//连接数据库
try
{
mc.Open();
//打开连接
MySQLCommandfirstCmd=newMySQLCommand("
setnamesgb2312"
,mc);
//设置字符格式,防止出现中文乱码
firstCmd.ExecuteNonQuery();
stringCommandText="
selectNodeID,ParentID,NodeName,NodeSeriesfromnodeinfo"
;
MySQLCommandSecondCmd=newMySQLCommand(CommandText,mc);
//声明一个MysqlCommand变量,该变量用于执行数据库命令
SecondCmd.ExecuteNonQuery();
//执行命令,向表中添加节点信息
MySQLDataReadermsdr;
//该变量用于存储从数据库中读取的值
msdr=SecondCmd.ExecuteReaderEx();
//从数据库中访问数据,将返回值赋给msdr
while(msdr.Read())
{
intid=msdr.GetInt16(0);
pidlist.Add(id);
//数据1
stringname=msdr.GetString
(2);
pidlist.Add(name);
//节点名称
}
msdr.Close();
catch(MySQLExceptionex)
stringerror=ex.Message;
Console.WriteLine(error);
returnnull;
finally
mc.Close();
//关闭连接
(2)向数据库中插入、修改或删除记录
MySQLConnectionmc=newMySQLConnection();
//新建连接
mc.Open();
//设置字符格式,防止出现中文乱码
MySQLCommandmsc=newMySQLCommand();
msc.Connection=mc;
msc.CommandText=sqlquery;
//(插入、修改或删除记录的sql语句)
msc.ExecuteNonQuery();
//执行命令
msc.Dispose();
returntrue;
Console.WriteLine(ex.Message);
returnfalse;
{
}
2.C#语言
注意:
在程序编写时,必须加注视
1)TCP监听程序
IPAddressm_host=IPAddress.Parse(MainProcess.LocalIP);
TcpListenerlistenning=newTcpListener(m_host,MainProcess.DataBasePort);
listenning.Start();
2)TCP发送机接收程序
(1)发送
TcpClientclient=newTcpClient(IpDestination,PortDestination);
NetworkStreamclientFlow=client.GetStream();
byte[]byteTime=Encoding.BigEndianUnicode.GetBytes(str);
clientFlow.Write(byteTime,0,byteTime.Length);
clientFlow.Close();
client.Close();
(2)接收
TcpClientconnectionsocket;
=listenning.AcceptTcpClient();
NetworkStreamreceiveFlow=connectionsocket.GetStream();
receiveBytes=receiveFlow.Read(receiveBuffer,0,receiveBuffer.Length);
connectionsocket.Close();
值得注意的是:
c#中发送连接异常时,进入异常等待时间约为11秒。
2)定时器
定时器的创建、触发事件、定时时间以及定时器的关闭
aTimer1=newSystem.Timers.Timer();
aTimer1.Elapsed+=newElapsedEventHandler(OnTimedEvent1);
aTimer1.Interval=60000;
aTimer1.Enabled=true;
aTimer1.Enabled=false;
publicstaticvoidOnTimedEvent1(objectsource,ElapsedEventArgse){}
3)多线程
ThreadlistenPort8010=newThread(listenMethod);
listenPort8010.Start();
C#中没有完善的强制关闭线程的方法。
4)读写ini文件
(1)读
[DllImport("
kernel32"
)]
privatestaticexternlongWritePrivateProfileString(stringsection,stringkey,stringval,stringfilePath);
stringPath="
C:
\\ProgramFiles\\网络监控系统\\数据库服务\\DatabaseIP.ini"
StringBuilderreadData=newStringBuilder(255);
stringSection="
ip"
stringKey="
DatabaseIP"
GetPrivateProfileString(Section,Key,"
"
readData,255,Path);
LocalIP=readData.ToString();
(2)写
publicstaticexternintGetPrivateProfileString(stringsection,stringkey,stringdef,StringBuilderretVal,intsize,stringfilePath);
stringwriteData=databaseIP1.Text;
WritePrivateProfileString(Section,Key,writeData,Path);
5)系统服务
在“引用”中添加“System.ServiceProcess”然后再工程文件中添加语句usingSystem.ServiceProcess;
即可使用系统服务方法类。
如下为遍历计算机中的系统服务
ServiceController[]services=ServiceController.GetServices();
foreach(ServiceControllerscTempinservices)
if(scTemp.ServiceName!
=null)
switch(scTemp.ServiceName)
{}
}
系统服务的开启与关闭
ServiceControllerdatabaseService=newServiceController("
Net_DatabaseServer"
);
databaseService.Start()
databaseService.Stop()
3.软件的打包
使用vs自带的“安装与部署”只能生成.msi文件,而且打包设置几乎没有,使用起来非常不便,此次采用setupfactory与vs结合的方法对软件进行打包处理。
针对3个服务器程序,首先使用vs自带的“安装与部署”生成3个.msi文件,可以将其添加入setupfactory中的初始文件中,在打包程序中进行引用,但是这些文件必须通过MSItoEXECompiler工具转换为exe文件,否则程序会不予执行。
Setupfactory中是以屏幕操作为基础的,用户使用程序通过编辑屏幕就可以进行软件安装时对电脑的设置。
1)界面编辑
通过“添加”可以在“安装之前”、“安装之时”、“安装之后”添加多种屏幕。
如对话框屏幕、输入框屏幕、选择框屏幕等等。
2)编程环境
3)编程语言
在不熟悉Setupfactory语言是可以通过“添加操作”选择对注册表,对话框,文件的属性、内容以及安装文件等执行相关操作。
语言使用
(1)对安装文件的执行
File.Run(_TempLaunchFolder.."
\\数据库.exe"
"
SW_SHOWNORMAL,false);
Application.Sleep(5000);
repeat
SetupEnd=File.IsInUse(_TempLaunchFolder.."
untilnotSetupEnd;
Screen.Next();
(2)注册表
Registry.SetValue(HKEY_LOCAL_MACHINE,"
SYSTEM\\CurrentControlSet\\Services\\Net_DatabaseServer"
"
Description"
网络监控系统的服务项,用于提供数据库服务"
REG_SZ);
Start"
2"
REG_DWORD);
Type"
272"
(3)ifelse
ifcheck01then
Screen.Jump("
数据库服务安装进行中"
else
ifcheck02then
Screen.Jump("
通讯机安装进行中"
else
策略服务安装进行中"
)
end
end
(4)会话变量
Path6="
\\ProgramFiles\\网络监控系统\\策略服务\\web\\IIS6.0"
SessionVar.Set("
%AppFolder6%"
Path6);
除此之外,使用setupfactory可以完成自定义安装,安装界面图片的填充,背景音乐的设置,查找并终止进程等。
4.系统服务控制器
此控制器完成了对指定文件中所包含的ip地址的修改和系统服务状态显示及开关功能,主要使用使用winform组件完成。
三、心得体会
经过此次软件编程,有几点体会:
1.在软件编程中,首要解决的是软件需求分析以及对软件整体的把握,后期编程才会游刃有余。
2.使用vs开发工具时,vs自带的msdn软件手册十分重要,包含了需要掌握的所有知识。
3.不懂得要积极去问,但不能不懂的都去问别人,首先应想到的是自己。