数据库中是可以存储的,sql server,oracle等大型关系数据库都支持。有对应的存储类型。
你的问题是不是存储到数据库中,而只是把路径或文件名存储到数据库中,文件只是上传到相应路径。
dreamweaver可以作为你开发程序的工具,但是需要你去写代码或找到你所使用服务端脚本的相应上传代码你才能实现文件上传。
所以你需要选择任何一种服务端脚本去学习。其实除了asp实现时比较复杂(如果你用那些上传类,其实也不不杂,因为人家写好了你去调用),其他脚本都有比较直接的上传方法支持。
不知道你用的是什么数据库,不过,一般的数据库(MSSQL之类)数据存放类型都不支持格式,你可以把你的上传到服务器上,然后在数据库里存放一些信息(比如文件的文件名,文件存放位置等),然后在浏览器里读取!上传也是分两部分的,一是把文件本身放到服务器的硬盘空间里,二是把的一些信息(如上述)存放在数据库里,这样就完成了上传!
1、新建一个数据库,数据库名为Image,表名为image。并为表添加ID,tupian两个列。
2、新建一个项目(Photo),在工具箱中往窗体中拖入一个PictureBox控件,两个Button按钮,一个OpenFileDialog控件。并修改pictureBox1控件的属性BorderStyle为FixedSingle,SizeMode为StretchImage;修改两个button控件属性的Text值依次为”打开一张”“插入数据库”。
3、首先打开“数据“选择“添加新数据源”,然后(数据库)下一步,(数据集)下一步,选择”新建连接“,依次选择服务器名,服务器验证方式,选择”选择或输入一个数据库名。
4、选择”选择或输入一个数据库名,添加刚刚新建的数据库,然后点击“测试连接”,看看数据库连接是否成功。成功后点“确定”回到“数据源配置向导”页面,将“连接字符串复制下来。
5、添加两条using命名空间 using SystemIO; using SystemDataSqlClient;作用为读取二进制数据流,用于数据库的连接。
6、编辑Button按钮“打开一张”的Click事件。
7、编写Button按钮“插入数据库:的Click事件。
我给你一个小例子,你自己看看吧,可能会由于我们数据库软件不同,可能需要修改一下。(我用的是 SQL Server)
下面是我自己做的一个类,实例化后即可使用。
using System;
using SystemCollectionsGeneric;
using SystemComponentModel;
using SystemData;
using SystemDataOleDb;
using SystemDrawing;
using SystemText;
using SystemWindowsForms;
using SystemDataSqlClient;
using SystemIO;
namespace SQL_QueryMyClass
{
class ConnectionSQLClass
{
private string _server = stringEmpty;
private string _database = stringEmpty;
private string _uid = stringEmpty;
private string _pwd = stringEmpty;
private string _sqlConnection = stringEmpty;
public ConnectionSQLClass(string server, string database, string uid, string pwd)
{
_server = server;
_database = database;
_uid = uid;
_pwd = pwd;
_sqlConnection = "server=" + _server + ";database=" + _database + ";uid=" + _uid + ";pwd=" + _pwd;
}
//插入(table 表名、fieldName 存储字段名、imagePath 完整路径)
public bool Insert_Image(string table, string fieldName, string imagePath)
{
try
{
FileStream fs = new FileStream(imagePath, FileModeOpen);
byte[] imagebytes = new byte[fsLength];
BinaryReader br = new BinaryReader(fs);
imagebytes = brReadBytes(ConvertToInt32(fsLength));
//打开数所
SqlConnection con = new SqlConnection(_sqlConnection);
conOpen();
SqlCommand com = new SqlCommand("insert into " + table + "(" + fieldName + ")" + " values(@ImageList)", con);
comParametersAdd("ImageList", SqlDbTypeImage);
comParameters["ImageList"]Value = imagebytes;
comExecuteNonQuery();
conClose();
}
catch { return false; }
return true;
}
//读取 fieldName 该字段中符合条件的所有(sql SQL查询语句、fieldName 存储字段名)
public List<Image> Get_Image(string sql, string fieldName)
{
List<Image> InformatoinCollection = new List<Image>();
SqlConnection cn = new SqlConnection(_sqlConnection);
try
{
cnOpen();
SqlCommand cm = new SqlCommand(sql, cn);
SqlDataReader dr = cmExecuteReader();
//MessageBoxShow(drHasRowsToString());
if (!drHasRows)
{
return null;
}
while (drRead())
{
MemoryStream ms1 = new MemoryStream((byte[])dr[fieldName]);
Image image = ImageFromStream(ms1, true);
InformatoinCollectionAdd(image);
}
drClose();
cnClose();
}
catch
{
InformatoinCollection = null;
}
return InformatoinCollection;
}
}
}
希望对你有帮助!
以上就是关于利用Dreamweaver向数据库中上传图片全部的内容,包括:利用Dreamweaver向数据库中上传图片、怎么上传图片到数据库,然后在从数据库里调出来啊.、图片如何存入数据库等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)