1
//
DataReader的详细用法
2
cmd.CommandText
=
"
GetInfo
"
;
3
cmd.CommandType
=
CommandType.StoredProcedure;
4
SqlParameter param
=
cmd.Parameters.Add(
"
@Fid
"
,
16
);
5
param
=
cmd.Parameters.Add(
"
@Fname
"
,SqlDbType.VarChar,
8
);
6
param.Direction
=
ParameterDirection.Output;
7
param
=
cmd.Parameters.Add(
"
@Fphone
"
,SqlDbType.VarChar,
8
);
8
param.Direction
=
ParameterDirection.Output;
9
conn.Open();
10
cmd.ExecuteNonQuery();
11
string
Fname
=
cmd.Parameters[
"
@Fname
"
].Value.ToString();
12
string
Fphone
=
cmd.Parameters[
"
@Fphone
"
].Value.ToString();
13
Console.WriteLine(Fname
+
"
"
+
Fphone);
14
conn.Close();
15
showSplit();
16
}
17
18
//
**************************************
19
//
*演示读取多个无关记录集
20
//
**************************************
21
public
void
multiResult()
22
{
23
SqlCommand cmd;
24
cmd = conn.CreateCommand();
25
string sqla = "select Fname from friend";
26
string sqlb = "select Fphone from friend";
27
cmd.CommandText = sqla + ";" + sqlb;
28
conn.Open();
29
SqlDataReader reader= cmd.ExecuteReader();
30
int i = 1;
31
do
32
{
33
Console.WriteLine("第" + i.ToString() + "个记录集内容如下:n");
34
while(reader.Read())
35
{
36
Console.WriteLine(reader[0].ToString() + "t");
37
}
38
i++;
39
}while(reader.NextResult()); //NextResult()移动到下一个记录集
40
reader.Close();
41
conn.Close();
42
showSplit();
43
}
44
45
//
**************************************
46
//
*使用DataReader获得数据库模式信息
47
//
**************************************
48
public
void
getSchema()
49
{
50
SqlCommand cmd;
51
cmd = conn.CreateCommand();
52
string sql = "select Fid,Fname,Fphone from friend";
53
cmd.CommandText = sql;
54
conn.Open();
55
SqlDataReader reader = cmd.ExecuteReader();
56
DataTable SchemaTable = reader.GetSchemaTable();
57
58
DataRowCollection SchemaColumns = SchemaTable.Rows;
59
DataColumnCollection SchemaProps = SchemaTable.Columns;
60
foreach(DataRow SchemaColumn in SchemaColumns)
61
{
62
foreach(DataColumn SchemaColumnProp in SchemaProps)
63
{
64
Console.WriteLine(SchemaColumnProp.ColumnName + "=" + SchemaColumn[SchemaColumnProp.ColumnName].ToString());
65
}
66
}
67
reader.Close();
68
conn.Close();
69
showSplit();
70
}
71
72
//
**************************************
73
//
*从数据库读取二进制数据的代码段
74
//
*该代码段只是读取二进制的片断,不是
75
//
*整个程序,所以不能执行,你可以把它
76
//
*集成到你的WinForm项目里面。
77
//
**************************************
78
public
void
getBinary()
79
{
80
/**//*
81
System.IO.MemoryStream stream = new System.IO.MemoryStream();
82
System.IO.BinaryWriter writer = new System.IO.BinaryWriter(stream);
83
int BufferSize = 1024;
84
byte[] Buffer = new Byte[BufferSize];
85
long Offset = 0;
86
long BytesRead = 0;
87
do
88
{
89
BytesRead = reader.GetBytes(2,Offset,Buffer,0,BufferSize);
90
writer.Writer(Buffer,0,(int)BytesRead);
91
writer.Flush();
92
Offset += BytesRead;
93
}
94
while(BytesRead == BufferSize);
95
*/
96
}
97
98
//
添加输出分隔
99
private
void
showSplit()
100
{
101
Console.WriteLine("n********************************************************************n");
102
}
103
104
public
static
void
Main(
string
[] args)
105
{
106
SqlReader sqlreader = new SqlReader();
107
108
sqlreader.basicReader();
109
110
sqlreader.hasParamReader();
111
112
sqlreader.hasOledbParamReader();
113
114
sqlreader.outParamShow();
115
116
sqlreader.multiResult();
117
118
sqlreader.getSchema();
119
}
120
}

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

21

22



23

24

25

26

27

28

29

30

31

32



33

34

35



36

37

38

39

40

41

42

43

44

45

46

47

48

49



50

51

52

53

54

55

56

57

58

59

60

61



62

63



64

65

66

67

68

69

70

71

72

73

74

75

76

77

78

79



80


81

82

83

84

85

86

87

88

89

90

91

92

93

94

95

96

97

98

99

100



101

102

103

104

105



106

107

108

109

110

111

112

113

114

115

116

117

118

119

120

转载于:https://www.cnblogs.com/ilovexiao/archive/2007/11/05/950255.html
最后
以上就是淡然心情最近收集整理的关于DataReader的详细用法的全部内容,更多相关DataReader内容请搜索靠谱客的其他文章。
本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
发表评论 取消回复