1.http://topic.csdn.net/u/20080523/05/cbd31f73-bbd3-49d6-9769-169e98b46e00.html?seed=2128552537
g.DrawString(addText, f, b, 35, 35); ///水印加字 g.DrawImage(copyImage, new System.Drawing.Rectangle(image.Width - copyImage.Width, image.Height - copyImage.Height, copyImage.Width, copyImage.Height), 0, 0, copyImage.Width, copyImage.Height, System.Drawing.GraphicsUnit.Pixel); ///水印加图
2.一品梅(156934052) 16:22:49 我winform也一点不懂,哎。 一品梅(156934052) 16:23:34 请问期货软件能用winform做吗,结合网络 一品梅(156934052) 16:24:02 用哪一层socket呢?一点没学习过,呵呵。 patriot074(FJ)<[email protected]> 16:24:38 晕倒,这个和winform关系不大 patriot074(FJ)<[email protected]> 16:24:56 调用api是也有用到特性DllImport patriot074(FJ)<[email protected]> 16:25:20 可以做的 patriot074(FJ)<[email protected]> 16:25:36 web通信有很多种方法,也可以用webservice 一品梅(156934052) 16:25:58 嗯,比如期货,实时更新数据。 patriot074(FJ)<[email protected]> 16:28:35 没问题的 一品梅(156934052) 16:29:12 不过界面不就是winform吗?老师 一品梅(156934052) 16:30:15 软件载体?winform吧? patriot074(FJ)<[email protected]> 16:31:22 那是 一品梅(156934052) 16:32:20 API就只是DllImport吧,我回头有时间到网上查查。 patriot074(FJ)<[email protected]> 16:34:41 api具体可以参考win32 SDK文档,还有就是要清楚如何把api中的参数类型等映射到.net支持的类型。当然,最简单的就是上网找范例了,呵呵 一品梅(156934052) 16:35:51 谢谢,如果我一点winform,API的知识都不懂,想入门(就是以后能够自己通过网络解决此类深度的问题)要多长时间呢 patriot074(FJ)<[email protected]> 16:37:45 很快吧,只要会基础的C# 一品梅(156934052) 16:38:09 谢谢您。 patriot074(FJ)<[email protected]> 16:38:21 真正的认真练习,一个月就可以写了。现在开发工具简化了很多GUI操作
3.数据库设计中注意环节: 对于新手,我觉得首先应该注意以下几个环节 1 主键设置(比方说员工表,有的会以姓名为主键,有的会以员工号为主键) 2 索引设置(对于将会在查询中频繁使用的查询条件应该设置加上索引) 3 适当的冗余字段(比方说员工表和工资表,我可以通过在工资表冗余一个员工姓名字段,从而避免联表查询)
4.轻衣 20:10:36 如何导出大于6万条以上的数据,因为excel2003最大只能存65535条数据,如何处理好这个问题 轻衣 20:14:22 private const string sql = "select top 70000 * from lzj_books"; protected void Page_Load(object sender, EventArgs e) { DataSet ds = new DataSet(); ds = new BSafe().GetData(sql); if (ds.Tables[0].Rows.Count < 6000) { SaveToExcel(ds.Tables[0], "11.xls"); } else { int i = ds.Tables[0].Rows.Count - 60000; const string sql1 = "select top 60000 * from lzj_books"; DataSet dst = new DataSet(); dst = new BSafe().GetData(sql1); SaveToExcel(dst.Tables[0], "1.xls"); string sql2 = "select top " + i + " * from lzj_books where Boo_Id not in(select top 60000 Boo_Id from lzj_books)"; // Response.Write(sql2); DataSet dst2 = new DataSet(); dst2 = new BSafe().GetData(sql2); SaveToExcel(dst2.Tables[0], "2.xls"); } } private void SaveToExcel(DataTable objTable, string name) { int CountR = objTable.Rows.Count;//行数 int CountC = objTable.Columns.Count;//列数 Response.Clear(); Response.Buffer = true; //设置Http的头信息,编码格式 Response.AppendHeader("Content-Disposition", "attachment;filename=" + name); Response.ContentType = "application/ms-excel"; //设置编码 Response.Charset = "GB2312"; Response.ContentEncoding = System.Text.Encoding.GetEncoding("GB2312"); //写表头 for (int i = 0; i < CountC; i++) { Response.Write(objTable.Columns[i].ColumnName + "/t"); } Response.Write("/n"); //写表内容 for (int RowNo = 0; RowNo <= CountR - 1; RowNo++) { string RowContent = ""; for (int CloumnNo = 0; CloumnNo <= CountC - 1; CloumnNo++) { RowContent += Convert.ToString(objTable.Rows[RowNo][CloumnNo]) + "/t"; } RowContent += "/n"; Response.Write(RowContent); } Response.Flush();
5.--注意你的路径,参考如下的方法试试 EXEC sp_attach_db @dbname = N'AdventureWorks', @filename1 = N'c:/Program Files/Microsoft SQL Server /MSSQL.1/MSSQL/Data/AdventureWorks_Data.mdf', @filename2 = N'c:/Program Files/Microsoft SQL Server /MSSQL.1/MSSQL/Data/AdventureWorks_log.ldf' ;
6.在服务器 执行DBCC CHECKDB(DBNAME) 时出现如下错误! 服务器: 消息 8938,级别 16,状态 2,行 1 表错误: 页 (1:269),对象 ID 2,索引 ID 1。意外的页类型 7。 DBCC 执行完毕。如果 DBCC 输出了错误信息,请与系统管理员联系。 ------ 建议,备份数据库. 如果不能恢复了. 1.新建立一个库. 2.在原来库中生成所有建表的语句,然后到新库中用语句创建表. 3.通过DTS把所有的数据从原库导入到新库.
7.--SQL如何备份到异机 写成存储过程,建立作业定时备份~~~ --在sql中映射一下就可以了 exec master..xp_cmdshell 'net use z: //yizhi/D$ "密码" /user:yizhi/administrator' /*--说明: exec master..xp_cmdshell 'net use z: //xz/c$ "密码" /user:xz/administrator' z:是映射网络路径对应本机的盘符,与下面的备份对应 //xz/c$是要映射的网络路径 xz/administrator xz是远程的计算机名, administrator是登陆的用户名 密码 面指定的administrator用户的密码 --*/ --备份;with init覆盖|noinit添加 backup database 库名 to disk='E:/H_BACKUP.bak' with init --COPY exec master..xp_cmdshell 'copy E:/H_BACKUP.bak z:' --删除(这句可以去掉) --exec master..xp_cmdshell 'del E:/H_BACKUP.bak' --完成后删除映射 exec master..xp_cmdshell 'net use z: /delete'
8.1、合理的数据库设计,尽量进行规范化设计,要尽量避免程序的多个模块都会对一个表进行增加/更新/删除操作(通常这种情况都会出现死锁或者堵塞)。另外,为了速度,还要进行反规范的冗余。 2、合理的索引设计,当要访问数据库时,要使用存储过程,不要在程序级直接写代码访问数据库。并且在写存储过程中,要在筛选的条件(Where , Join on 中的条件,要用到索引),能够用到覆盖索引,就最好,在SQL2005中,可以用INCLUDE的新特性,尽量做到覆盖索引。 3、要合理分离数据,当有些数据处于不再更新,而只是提供查询的时候,就要将这些数据移到另外一个地方(Read only),尽量令到业务表的数据最少,从而提升访问速度。 4、在程序端,对于数据量少,而且在多个地方使用,并且变动很少的这部分基础数据,要做Cache,这样减少程序和数据库的沟通。 5、在布局数据库时,要将数据文件和日志文件分别放到两块不同的硬盘,这样就可以提高速度。
9.--SQL 随机抽取数据问题 select top 1000 distinct * into TB1 from tb ORDER BY NEWID() --TB1事先不存在 insert TB1 select top 1000 distinct * from tb ORDER BY NEWID() --TB1事先存在.且结构与tb匹配
10.like '%xx' 这种%放在前面的写法,是无法使用索引的。 举个例子,给你本英语字典,让你查前面3个字母为zip的字,你可以用目录很快查到。但是如果让你查其中包含zip的字,你只能一页一页的翻字典了。