大家好,对C#学习的入门实例感兴趣的小伙伴,下面一起跟随三零脚本的小编来看看C#学习的入门实例的例子吧。
C#中是没有数据varchar这种数据类型的,这是SQL Server数据库中的一种数据类型,所以你可能会在C#相关书中见到它,请不要奇怪。
char:固定长度的非 Unicode 字符数据,最大长度为8000个字符。
varchar:可变长度的非 Unicode 数据,最长为8000个字符。
nchar:是固定长度的 Unicode 字符串类型,最大长度为4000个字符。
decimal 关键字表示128位数据类型。同浮点型相比,decimal 类型具有更高的精度和更小的范围,这使它适合于财务和货币计算。
如果希望实数被视为 decimal 类型,请使用后缀 m 或 M ,例如:
decimal myMoney = 300.5m;
如果没有后缀 m,数字将被视为 double 类型,从而导致编译器错误。
整型被隐式转换为 decimal,其计算结果为 decimal。因此,可以用整数初始化十进制变量而不使用后缀,比如:
decimal myMoney = 300;
在 double(浮点型) 和 decimal 类型之间不存在隐式转换;因此,必须使用强制转换在这两种类型之间进行转换。例如:
decimal myMoney = 99.9m;
double x = (double)myMoney;
myMoney = (decimal)x;
override修饰符,覆写一个基类中的方法。重载则是将将同名方法重新写过,达到同名的函数实现不同的功能。从而实现了一个方法有不同的版本。override与重载的本质区别是,加入了override的修饰符的方法,此方法始终只有一个被你使用的方法。
override就好像“你叫张三,你爸爸给你修改了名字为李四”;重载就好像“你叫张三,但是别人也可以叫张三”。
MSDN给的解释是“要扩展或修改继承的方法、属性、索引器或事件的抽象实现或虚实现,必须使用 override 修饰符”。
HasRows属性
获取一个值,用于指示相应的 DataReader 中是否包含一行或多行。如果包含有一行或者多行,则返回true,否则返回false。
在C#中的用法:
public bool HasRows {get;}
DataSet是可以把数据读出来,加载到内存中,然后在本机进行数据操作,比如insert、updata、delete等, 然后一并提交给数据库。
微软的解释:“从 System.Data 名称空间使用多种对象,您可以连接到一个数据库服务器,运行查询,然后把结果放到 DataSet 对象中。DataSet 是断开连接的对象。因此,加载数据后,在您想加载更多数据或想使用您对这些信息的内存中副本所作的更改更新服务器之前,不会再使用与数据库的连接。”
DataAdapter 的Update 方法可调用来将DataSet 中的更改解析回数据源。
SqlDataAdapter 是 DataSet 和 SQL Server 之间的桥接器,用于检索和保存数据。SqlDataAdapter 通过对数据源使用适当的 Transact-SQL 语句映射 Fill(它可更改 DataSet 中的数据以匹配数据源中的数据)和 Update(它可更改数据源中的数据以匹配 DataSet 中的数据)来提供这一桥接。更新是逐行进行的。对于每个已插入、修改和删除的行,Update 方法会确定已对其执行的更改的类型(Insert、Update 或 Delete)。
根据更改类型,执行 Insert、Update 或 Delete 命令模板将已修改的行传播给数据源。当 SqlDataAdapter 填充 DataSet 时,它为返回的数据创建必需的表和列(如果这些表和列尚不存在)。
用特定的编码将基元数据类型读作二进制值。
几个生僻单词:
execute:实行, 实施, 执行,履行,操纵,演奏
adapter:适应者,适配器,衔接器,改编者