您的位置:首页 > 其它

一天问题小结20140521

2014-05-21 22:32 316 查看
[align=left]1、asp.net 操作Access数据库,CURD操作[/align]

[align=left]asp.net提供操作数据库有以下方式 Sqlclient、Oledb、odbc;[/align]
[align=left]asp.net操作access数据库和操作sqlserver数据没有大的区别,都可以使用基本的sql语句对数据进行操作,连接字符串不一样,sqlserver使用的是sqlserver数据库引擎,access数据库一般的连接字符串是:[/align]
[align=left]<connectionStrings>[/align]
<add name="WebSiteConnectionString" connectionString="Provider=Microsoft.Jet.OLEDB.4.0;Data Source=|DataDirectory|aisino_data.mdb" providerName="System.Data.OleDb" />

</connectionStrings>

若是access2007及以上版本provider改为:Provider=Microsoft.Jet.OLEDB.12.0,文件格式是.accdb;
注意:在asp.net中经常把连接字符串写在web.config中。但是access的连接字符串是需要数据库的绝对位置。即 盘符:/文件夹/文件 这样就导致经常把文件拷贝后需要改路径的问题。其实完全可以通过程序来获得数据库文件的绝对路径。具体如下:

web.config中只写数据库文件名 (一般会把数据库文件放在App_Data文件夹下,因为有一定的安全性)

<appSettings>

<add key="ConnString" value="App_Data\ManageDB.accdb"/>

</appSettings>

然后在DBHelper类获得字符串的写上如下方法:

public static string connectionString = "Provider=Microsoft.ACE.OLEDB.12.0; Data Source=" + AppDomain.CurrentDomain.BaseDirectory + ConfigurationSettings.AppSettings["ConnString"];

通过AppDomain.CurrentDomain.BaseDirectory来获得此数据库的绝对路径.

[align=left]2、SqlDataReader、SqlDataAdapter访问数据的区别[/align]

(1)、SqlDataReader //基于连接,只读访问 适合数据量较小。

SqlDataAdapter //基于非连接,适于数据量较大时,可以另行修改,最后再把修改结果返回给数据库。要求资源也大一点

(2)、SqlDataAdapter 读取数据后将数据集放入DataSet ,DataSet 的数据存在本地客服机内存

SqlDataReader返回的是一个数据读写器,只能一条条的读,操作起来不灵活,一般在只读的时候才用到。

SqlDataAdapter返回的是数据集或者表,可以对其中的数据作任意操作

(3)、写法上不同

SqlDatReader执行前须先打开数据库,然后须生成一个COMMAND对象。再由COMMAND.EXECUTEREADER()方法赋值。完成后须手动关闭联接。

SqlDataAdapter 执行时,自动打数据库,且不用Command的ExecuteReader方法进行赋值,完成后自动断开联接。

[align=left]3、listbox绑定数据,选择当前选中的值[/align]

[align=left]设置DataSource时用list集合进行绑定,当数据源发生变化时,listbox的数据源并不会跟着更新,还需要重新加载一次,使用DataTable可以双向更新[/align]
listBox.DataSource = ds.Tables[0];

listBox.DisplayMember = "carsnumber";

listBox.ValueMember = "id";

DataRowView drv = listBox.SelectedItem as DataRowView;

MessageBox.Show( "Text:" + drv[listBox.DisplayMember].ToString() );

MessageBox.Show( "Value:" + drv[listBox.ValueMember].ToString() );

list.SelectValue也可以取到当前选中的值

[align=left]4、连接access2007数据库报错,不可识别的数据库格式....mdb[/align]

access2007及以上版本provider改为:Provider=Microsoft.Jet.OLEDB.12.0;如下:

[align=left]<connectionStrings>[/align]
<add name="WebSiteConnectionString" connectionString="Provider=Microsoft.Jet.OLEDB.12.0;Data Source=|DataDirectory|aisino_data.accdb"
providerName="System.Data.OleDb" />
</connectionStrings>

[align=left]5、.mmap文件怎么打开[/align]

.mmap是思维导图MindManager软件的存储格式

[align=left]6、vs2005即时调试窗口怎么打开[/align]
[align=left]调试-窗口-即时,或者快捷键:Ctr +D +i[/align]

[align=left]7、vs2013 2012 版本查看代码文件有预览功能,若去掉,选择 工具/选项/环境/选项卡和窗口下找到 在解决方案资源管理器中预览选定的文件,去掉前面的勾即可[/align]

[align=left]8、.netframework2.0特性[/align]
[align=left]强类型;[/align]
[align=left]泛型和泛型集合、高级泛型,反射;[/align]
[align=left]可空类型,? as操作符;[/align]
[align=left]委托,匿名委托,协变逆变;[/align]
[align=left]yield迭代器;[/align]
[align=left]分部类型;[/align]
[align=left]静态类型 独立的取值赋值方法;[/align]
[align=left]命名空间别名;[/align]
[align=left]分布式计算,webservice、remoting、socket;[/align]
[align=left]多线程改进;[/align]
[align=left]http://msdn.microsoft.com/zh-cn/library/t357fb32(v=vs.90).aspx[/align]

[align=left]9、js中的闭包,回调函数[/align]
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: