
是表。
表由字段和记录组成。
字段是表中的列,每个字段代表一条信息在某一方面的属性,字段有类型,如“姓名”字段是字符型的,“年龄”字段是数字型的。字段的基本属性有:字段名称、数据类型、字段大小、默认值等。
记录是数据表中的行,由一个或多个字段的值组成,一条记录是一条完整的信息,显示一个对象的所有属性。如:001、张三、男、21,可以作为一条记录。
可以使用net提供的序列化和反序列化方法来实现,你可将对象序列化成XML字符串,然后存入数据库中,当你要使用对象的时候,再把数据库中保存字符串反序列化成对象就可以使用了,以下为示例代码:
public class Cat{
public string Color { get; set; }
public int Speed { get; set; }
public string Name{ get; set; }
}
//序列化
var cat1=new Cat{Color="Write",Speed=50,Name="MiMi" };
XmlSerializer ser = new XmlSerializer(typeof(Cat));
MemoryStream ms = new MemoryStream();
serSerialize(ms, cat1);
string xmlString = EncodingUTF8GetString(msToArray());
//xmlString就是你要保存到数据库的字符串
//反序列化
XmlSerializer dser = new XmlSerializer(typeof(Cat));
//xmlString是你从数据库获取的字符串
Stream xmlStream = new MemoryStream(EncodingUTF8GetBytes(xmlString));
Cat cat2=dserDeserialize(xmlStream) as Cat;//cat2 就是你要得到的class对象
什么》? 哎呀没必要。。
不过可实现的:如下为一个通用的例子:
假设有这么个对象:
import javaioSerializable;
public class MyObject implements Serializable {
private static final long serialVersionUID = 1L;
private int i;
public int getI() {
return i;
}
public void setI(int i) {
thisi = i;
}
}
//测试 的方法如下
import javaioByteArrayInputStream;
import javaioByteArrayOutputStream;
import javaioIOException;
import javaioObjectInputStream;
import javaioObjectOutputStream;
import javasqlConnection;
import javasqlDriverManager;
import javasqlPreparedStatement;
import javasqlResultSet;
public class test {
public static void main(String[] args) throws IOException,
ClassNotFoundException {
MyObject obj = new MyObject();
objsetI(4567);
write(Object2Bytes(obj));
// read();
}
public static void write(byte[] b) throws ClassNotFoundException {
Systemoutprintln(blength);
ClassforName("sunjdbcodbcJdbcOdbcDriver");
try {
Connection con = DriverManagergetConnection("jdbc:odbc:temp");
String sql = "insert into tab values()";
PreparedStatement pstmt = conprepareStatement(sql);
pstmtsetBytes(1, b);
pstmtexecute();
pstmtclose();
conclose();
} catch (Exception e) {
eprintStackTrace();
}
}
public static void read() throws ClassNotFoundException {
ClassforName("sunjdbcodbcJdbcOdbcDriver");
try {
Connection con = DriverManagergetConnection("jdbc:odbc:temp");
String sql = "select from tab";
PreparedStatement pstmt = conprepareStatement(sql);
ResultSet res = pstmtexecuteQuery();
while (res != null && resnext()) {
byte[] b = resgetBytes("key");
Systemoutprintln(blength);
MyObject obj = (MyObject) Bytes2Object(b);
Systemoutprintln(objgetI());
}
pstmtclose();
conclose();
} catch (Exception e) {
eprintStackTrace();
}
}
// 将对象转换成字节数组
public static byte[] Object2Bytes(Object obj) throws IOException {
ByteArrayOutputStream baos = new ByteArrayOutputStream();
ObjectOutputStream oos = new ObjectOutputStream(baos);
ooswriteObject(obj);
return baostoByteArray();
}
// 将字节数组转换成为对象
public static Object Bytes2Object(byte[] b) throws IOException,
ClassNotFoundException {
ByteArrayInputStream bais = new ByteArrayInputStream(b);
ObjectInputStream ois = new ObjectInputStream(bais);
Object obj = oisreadObject();
return obj;
}
}
以上就是关于在Access数据库系统的7种 *** 作对象中,用来存储数据的 *** 作对象是什么全部的内容,包括:在Access数据库系统的7种 *** 作对象中,用来存储数据的 *** 作对象是什么、C#如何把一个类的对象存入数据库(此时在数据库里面应该保存成什么数据类型)、关于数据库保存流java流对象等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)