trim-> only deal with the case related to the beginning and the end
replace-> can deal with the case in the middle
2009年10月27日星期二
2009年7月8日星期三
Java' List +template
ArrayList m =new ArrayList();
List minPath =m.subList(0, 0);
Java' s List class even can not initialize with the templete, feeling weird about it.
List
Java' s List class even can not initialize with the templete, feeling weird about it.
2009年7月1日星期三
2007年5月29日星期二
ASP.NET调用DLL(C#)
首先建立一个bin文件夹,然后将dll文件拷贝到该bin文件夹下,
然后在程序里使用
using namespace;
或者
<%@ import namespace="your-namespace" %>
的方式导入该命名空间,接下来就可以使用dll里面的函数了。
、创建C# 类库 (Dll)
以前在VC++中创建一个dll文件不能说简单,但在Visual C# 中,这将同样是轻而易举的事情。下面的介绍分成两部分:1、创建DLL,2、在客户端测试dll。
(1)创建DLL
首先创建一个空的类库工程。在VS.NET集成环境(IDE)中选择“文件->新建->工程文件->Visual C# 工程->类库”,点击Browse(浏览)按钮选择工程文件名和相应的目录,再点击 OK。
接着看看工程和它的相关文件。Solution Explorer(解决方案探测器)向工程中增加两个C# 类,第一个是 AssemblyInfo.cs ,第二个是Class1.cs。我们不讨论AssemblyInfo,重点介绍 Class1.cs。
双击Class1.cs,就能看到一个名称空间mcMath。我们将在客户机引用这个名称空间以使用这个类库:
namespace mcMath
{
using System;
///
/// Summary description for Class1.
///
public class Class1
{
public Class1()
{
//
// TODO: Add Constructor Logic here
//
}
}
}
现在就可以Build(构造)这个工程了。Build(构造)完毕后,就会在工程文件的bin/debug 目录中生成mcMath.dll文件。
增加一个方法
从View (视图)菜单中打开ClassView(类视图),开始只显示Class1,没有方法和属性。现在来增加一个方法和一个属性。
用鼠标右键单击“Class1”,选择“Add(增加)-> Add Method(增加方法)”,这时将弹出C# 方法生成向导:
在这个窗口中增加方法名、存取类型、返回类型、参数以及注释信息。使用Add(增加)和Remove(取消)按钮可分别从参数列表中增加和取消参数。这里增加了一个方法long Add( long val1, long val2 ),它负责将两个数字相加并返回和。
增加一个属性
同理可以通过C#属性生成向导,向类中增加一个属性:
增加了一个方法和一个属性后, Class1变成下图所示的样子:
仔细观察这个 Class1,你会发现C#的向导程序向类中增加了如下两个函数:
public long Add (long val1, long val2)
{
return 0;
}
public bool Extra
{
get
{
return true;
}
set
{
}
}
向类中增加代码
这里把Class1修改成为 mcMathComp ,因为 Class1是个容易造成混淆的名字,当想将这个类用在一个客户应用程序中时会造成问题。下面的代码对上面的做了些调整:
namespace mcMath
{
using System;
public class mcMathComp
{
private bool bTest = false;
public mcMathComp()
{
}
public long Add (long val1, long val2)
{
return val1 + val2;
}
public bool Extra
{
get
{
return bTest;
}
set
{
bTest = Extra ;
}
}
}
}
构造 dll
选择Build菜单创建dll文件,如果一切OK,就会在工程文件的 bin\debug目录生成dll文件。
(2)在客户端测试 dll
在客户端调用dll的方法和属性也是非常简单的工作,请遵照下面的步骤执行:
① 创建控制台应用程序
在VS.NET IDE集成环境中选择“文件-> 新建->工程文件->Visual C#工程文件->控制台应用程序”,最终将在这个控制台应用程序中测试dll。
② 增加名称空间的引用
选择“工程->添加引用”(Project->Add reference),然后浏览文件找到dll,点击 Ok:
引用添加向导程序将向当前工程文件中增加对相关库的引用:
③ 调用mcMath名称空间,创建 mcMathComp 的对象,并调用其方法和属性。
现在距离调用组件的方法和属性只有一步之遥了。请按照以下步骤进行:
●引用名称空间:using mcMath
●创建一个 mcMathComp的对象:mcMathComp cls = new mcMathComp();
●调用方法和属性
mcMathComp cls = new mcMathComp();
long lRes = cls.Add( 23, 40 );
cls.Extra = false;
以下是完整的工程文件代码:
namespace mcClient
{
using System;
using mcMath;
///
/// Summary description for Class1.
///
public class Class1
{
public Class1()
{
//
// TODO: Add Constructor Logic here
//
}
public static int Main(string[] args)
{
mcMathComp cls = new mcMathComp();
long lRes = cls.Add( 23, 40 );
cls.Extra = false;
return 0;
}
}
然后在程序里使用
using namespace;
或者
<%@ import namespace="your-namespace" %>
的方式导入该命名空间,接下来就可以使用dll里面的函数了。
、创建C# 类库 (Dll)
以前在VC++中创建一个dll文件不能说简单,但在Visual C# 中,这将同样是轻而易举的事情。下面的介绍分成两部分:1、创建DLL,2、在客户端测试dll。
(1)创建DLL
首先创建一个空的类库工程。在VS.NET集成环境(IDE)中选择“文件->新建->工程文件->Visual C# 工程->类库”,点击Browse(浏览)按钮选择工程文件名和相应的目录,再点击 OK。
接着看看工程和它的相关文件。Solution Explorer(解决方案探测器)向工程中增加两个C# 类,第一个是 AssemblyInfo.cs ,第二个是Class1.cs。我们不讨论AssemblyInfo,重点介绍 Class1.cs。
双击Class1.cs,就能看到一个名称空间mcMath。我们将在客户机引用这个名称空间以使用这个类库:
namespace mcMath
{
using System;
///
/// Summary description for Class1.
///
public class Class1
{
public Class1()
{
//
// TODO: Add Constructor Logic here
//
}
}
}
现在就可以Build(构造)这个工程了。Build(构造)完毕后,就会在工程文件的bin/debug 目录中生成mcMath.dll文件。
增加一个方法
从View (视图)菜单中打开ClassView(类视图),开始只显示Class1,没有方法和属性。现在来增加一个方法和一个属性。
用鼠标右键单击“Class1”,选择“Add(增加)-> Add Method(增加方法)”,这时将弹出C# 方法生成向导:
在这个窗口中增加方法名、存取类型、返回类型、参数以及注释信息。使用Add(增加)和Remove(取消)按钮可分别从参数列表中增加和取消参数。这里增加了一个方法long Add( long val1, long val2 ),它负责将两个数字相加并返回和。
增加一个属性
同理可以通过C#属性生成向导,向类中增加一个属性:
增加了一个方法和一个属性后, Class1变成下图所示的样子:
仔细观察这个 Class1,你会发现C#的向导程序向类中增加了如下两个函数:
public long Add (long val1, long val2)
{
return 0;
}
public bool Extra
{
get
{
return true;
}
set
{
}
}
向类中增加代码
这里把Class1修改成为 mcMathComp ,因为 Class1是个容易造成混淆的名字,当想将这个类用在一个客户应用程序中时会造成问题。下面的代码对上面的做了些调整:
namespace mcMath
{
using System;
public class mcMathComp
{
private bool bTest = false;
public mcMathComp()
{
}
public long Add (long val1, long val2)
{
return val1 + val2;
}
public bool Extra
{
get
{
return bTest;
}
set
{
bTest = Extra ;
}
}
}
}
构造 dll
选择Build菜单创建dll文件,如果一切OK,就会在工程文件的 bin\debug目录生成dll文件。
(2)在客户端测试 dll
在客户端调用dll的方法和属性也是非常简单的工作,请遵照下面的步骤执行:
① 创建控制台应用程序
在VS.NET IDE集成环境中选择“文件-> 新建->工程文件->Visual C#工程文件->控制台应用程序”,最终将在这个控制台应用程序中测试dll。
② 增加名称空间的引用
选择“工程->添加引用”(Project->Add reference),然后浏览文件找到dll,点击 Ok:
引用添加向导程序将向当前工程文件中增加对相关库的引用:
③ 调用mcMath名称空间,创建 mcMathComp 的对象,并调用其方法和属性。
现在距离调用组件的方法和属性只有一步之遥了。请按照以下步骤进行:
●引用名称空间:using mcMath
●创建一个 mcMathComp的对象:mcMathComp cls = new mcMathComp();
●调用方法和属性
mcMathComp cls = new mcMathComp();
long lRes = cls.Add( 23, 40 );
cls.Extra = false;
以下是完整的工程文件代码:
namespace mcClient
{
using System;
using mcMath;
///
/// Summary description for Class1.
///
public class Class1
{
public Class1()
{
//
// TODO: Add Constructor Logic here
//
}
public static int Main(string[] args)
{
mcMathComp cls = new mcMathComp();
long lRes = cls.Add( 23, 40 );
cls.Extra = false;
return 0;
}
}
IIS报Service Unavailable错的解决方案
过检测,发现我的windows2003的应用程序池被改成DefaultAppPool了!改成原来的MsSharePointAppPool就可以了。
转载一篇详细的文章:
浏览 Windows SharePoint Services Web 站点时收到“Service Unavailable”(服务不可用)错误信息
症状
当您浏览一个 Windows SharePoint Services Web 站点时,您可能会收到下面的错误信息:
Service Unavailable
原因
如果 Microsoft Internet 信息服务 (IIS) 6.0 中没有正确地配置用于虚拟服务器的应用程序池,就可能会发生此问题。此问题可能会在存在下列一种或多种情况时发生: •应用程序池没有运行。
•应用程序池帐户使用的密码不正确。
•应用程序池帐户不是服务器上的 IIS_WPG 和 STS_WPG 这两个组的公共成员。
解决方案
要解决此问题,请按照下列步骤操作: 1.验证是否已为虚拟服务器配置了应用程序池。默认的应用程序池是 MSSharePointPortalAppPool。
请按照下列步骤来确定虚拟服务器正在使用的应用程序池。 a. 单击“开始”,指向“管理工具”,然后单击“Internet 信息服务 (IIS) 管理器”。
b. 展开“ServerName”,展开“Web 站点”,右键单击虚拟服务器,然后单击“属性”。
c. 单击“主目录”选项卡。
为虚拟服务器配置的应用程序池列在“应用程序池”框中。
d. 单击“确定”。
2.验证应用程序池帐户使用的密码是否正确。IIS 不会自动轮询 Active Directory 目录服务中的密码更改。如果应用程序池帐户是一个域帐户,其密码已过期,则在为此帐户重新指定一个新密码后,您可能会收到本文“症状”部分所描述的错误信息。
请按照下列步骤来验证应用程序池帐户所用的密码是否正确: a. 在 Internet 信息服务 (IIS) 管理器中,展开“应用程序池”。
b. 右键单击为虚拟服务器配置的应用程序池(例如,右键单击“MSSharePointPortalAppPool”),然后单击“属性”。
c. 单击“标识”选项卡。
d. 在“密码”框中,键入列在“用户名”框中的应用程序池帐户所用的密码,然后单击“确定”。
e. 在“确认密码”对话框中,再次键入密码,然后单击“确定”。
3.验证应用程序池帐户是服务器上的 IIS_WPG 组和 STS_WPG 组的成员。
根据您的具体情况选用下列方法之一。 a. 在成员服务器上安装了 SharePoint Portal Server 的情况下: 1.单击“开始”,指向“管理工具”,然后单击“计算机管理”。
2.展开“本地用户和组”,然后展开“用户”。
3.右键单击虚拟服务器的应用程序池使用的帐户,然后单击“属性”。
4.单击“成员属于”选项卡。
验证 IIS_WPG 和 STS_WPG 是否都出现在“成员属于”列表中。如果其中之一没有列出或者两者均未列出,请根据具体情况将 IIS_WPG 组、STS_WPG 组或者这两个组添加到列表中。
b. 在域控制器上安装了 SharePoint Portal Server 的情况下: 1.启动“Active Directory 用户和计算机”。
2.展开“用户”。
3.右键单击虚拟服务器的应用程序池使用的帐户,然后单击“属性”。
4.单击“成员属于”选项卡。
验证 IIS_WPG 和 STS_WPG 都出现在“成员属于”列表中。如果其中之一没有列出或者两者均未列出,请根据具体情况将 IIS_WPG 组、STS_WPG 组或者这两个组添加到列表中。
4.重新启动 IIS 以回收应用程序池: a. 在 Internet 信息服务 (IIS) 管理器中,右键单击“ServerName”,指向“所有任务”,然后单击“重新启动 IIS”。
b. 单击“在 ServerName 上重新启动 Internet 信息服务”,然后单击“确定”。
转载一篇详细的文章:
浏览 Windows SharePoint Services Web 站点时收到“Service Unavailable”(服务不可用)错误信息
症状
当您浏览一个 Windows SharePoint Services Web 站点时,您可能会收到下面的错误信息:
Service Unavailable
原因
如果 Microsoft Internet 信息服务 (IIS) 6.0 中没有正确地配置用于虚拟服务器的应用程序池,就可能会发生此问题。此问题可能会在存在下列一种或多种情况时发生: •应用程序池没有运行。
•应用程序池帐户使用的密码不正确。
•应用程序池帐户不是服务器上的 IIS_WPG 和 STS_WPG 这两个组的公共成员。
解决方案
要解决此问题,请按照下列步骤操作: 1.验证是否已为虚拟服务器配置了应用程序池。默认的应用程序池是 MSSharePointPortalAppPool。
请按照下列步骤来确定虚拟服务器正在使用的应用程序池。 a. 单击“开始”,指向“管理工具”,然后单击“Internet 信息服务 (IIS) 管理器”。
b. 展开“ServerName”,展开“Web 站点”,右键单击虚拟服务器,然后单击“属性”。
c. 单击“主目录”选项卡。
为虚拟服务器配置的应用程序池列在“应用程序池”框中。
d. 单击“确定”。
2.验证应用程序池帐户使用的密码是否正确。IIS 不会自动轮询 Active Directory 目录服务中的密码更改。如果应用程序池帐户是一个域帐户,其密码已过期,则在为此帐户重新指定一个新密码后,您可能会收到本文“症状”部分所描述的错误信息。
请按照下列步骤来验证应用程序池帐户所用的密码是否正确: a. 在 Internet 信息服务 (IIS) 管理器中,展开“应用程序池”。
b. 右键单击为虚拟服务器配置的应用程序池(例如,右键单击“MSSharePointPortalAppPool”),然后单击“属性”。
c. 单击“标识”选项卡。
d. 在“密码”框中,键入列在“用户名”框中的应用程序池帐户所用的密码,然后单击“确定”。
e. 在“确认密码”对话框中,再次键入密码,然后单击“确定”。
3.验证应用程序池帐户是服务器上的 IIS_WPG 组和 STS_WPG 组的成员。
根据您的具体情况选用下列方法之一。 a. 在成员服务器上安装了 SharePoint Portal Server 的情况下: 1.单击“开始”,指向“管理工具”,然后单击“计算机管理”。
2.展开“本地用户和组”,然后展开“用户”。
3.右键单击虚拟服务器的应用程序池使用的帐户,然后单击“属性”。
4.单击“成员属于”选项卡。
验证 IIS_WPG 和 STS_WPG 是否都出现在“成员属于”列表中。如果其中之一没有列出或者两者均未列出,请根据具体情况将 IIS_WPG 组、STS_WPG 组或者这两个组添加到列表中。
b. 在域控制器上安装了 SharePoint Portal Server 的情况下: 1.启动“Active Directory 用户和计算机”。
2.展开“用户”。
3.右键单击虚拟服务器的应用程序池使用的帐户,然后单击“属性”。
4.单击“成员属于”选项卡。
验证 IIS_WPG 和 STS_WPG 都出现在“成员属于”列表中。如果其中之一没有列出或者两者均未列出,请根据具体情况将 IIS_WPG 组、STS_WPG 组或者这两个组添加到列表中。
4.重新启动 IIS 以回收应用程序池: a. 在 Internet 信息服务 (IIS) 管理器中,右键单击“ServerName”,指向“所有任务”,然后单击“重新启动 IIS”。
b. 单击“在 ServerName 上重新启动 Internet 信息服务”,然后单击“确定”。
2007年5月16日星期三
文本分类子模块项目开发心得
1 第一次遇到MySQL数据库的BUG,晕翻>_<,害得我调试半天,原来是MYSQL把中文的“读”和“多”当成相同的字符串了,真是烂货数据库。。。
2 后来才搞清楚,是MySQl的字符编码设置的问题,搞了一上午和一下午,发现要改:
(1在my.ini处的2处都要改为default character set,
(2建的所有的表都要在最后加上default charset = gbk,
(3 string useGBK = "set names gbk";//成功调试必备的
DBComm = new MySQLCommand(useGBK, DBConn);
DBComm.ExecuteNonQuery();
3 一些常用的MySQLConnection 的函数集
static void Main(string[] args)
{
string sqlstr = "select * from manavatar";
MySQLConnection DBConn = new MySQLConnection(new MySQLConnectionString("192.168.0.13", "flashdata", "root", "root", 3306).AsString);
DBConn.Open();
//MySQLDataAdapter myadap = new MySQLDataAdapter(sqlstr, conn);
MySQLCommand DBComm = new MySQLCommand(sqlstr,DBConn);
MySQLDataReader DBReader = DBComm.ExecuteReaderEx(); //DBComm.ExecuteReaderEx();
MySQLDataAdapter DTAdapter = new MySQLDataAdapter(sqlstr,DBConn);
DataSet myDataSet = new DataSet();
DTAdapter.Fill(myDataSet,"manavatar");
try
{
while (DBReader.Read())
{
//Console.WriteLine("11");
Console.WriteLine("DBReader:{0},\t\t\tddddd:{1},\t\t {2}",DBReader.GetString(0), DBReader.GetString(1),DBReader.GetString(3));
}
Console.WriteLine("0000");
}
catch (Exception e)
{
Console.WriteLine("读入失败!"+e.ToString());
}
finally
{
Console.WriteLine("DBReader关闭");
Console.WriteLine("DBConn关闭");
DBReader.Close();
//DBConn.Close();
}
for (int i = 0; i < myDataSet.Tables["manavatar"].Rows.Count; i++)
{
Console.WriteLine("{0}",myDataSet.Tables["manavatar"].Rows[2]["user"]);
}
}
这是一个简单的例子。
在这里有个问题:dataset如果没设主键的话,可能会引起一些对数库操作的问题,比如会造成updata出现错误。
4 项目中导入了一个开源的DLL,MySQLDriverCS,他对C#调用MySQL做了很好的封装
5出现了诡异的语句INSERT INTO dic VALUES('/|\','军事20',9,1,0.181818181818182);
主要'/|\'是转义字符,暂时没有很好的解决方法
5 如果要调用generic 的Sort方法,必须实现CompareTo接口。这个接口有一个叫CompareTo(object)方法,如果“this”大于、小于 ...
如果想使用Array等的Find方法,必须重载Equals()方法,因为任何类都是继承Object类的。
6 无法显示 XML 页。
使用 XSL 样式表无法查看 XML 输入。请更正错误然后单击 刷新按钮,或以后重试。
--------------------------------------------------------------------------------
名称以无效字符开头。处理资源 'http://localhost/Asp.net/Default.aspx' 时出错。第 1 行,位置: 2
<%@ Page Language="C#" AutoEventWireup="true" CodeFile="Default.aspx.cs" Inherits="_Default" %>
===================
解决办法:运行vs2005命令行(开始、所有程序、vs2005、tools,写得不准确),之后找到.net2.0的路径,我的是在C:\WINDOWS\Microsoft.NET\Framework\v2.0.50727,之后运行aspnet_regiis.exe /i,就ok了。
(待续)
2 后来才搞清楚,是MySQl的字符编码设置的问题,搞了一上午和一下午,发现要改:
(1在my.ini处的2处都要改为default character set,
(2建的所有的表都要在最后加上default charset = gbk,
(3 string useGBK = "set names gbk";//成功调试必备的
DBComm = new MySQLCommand(useGBK, DBConn);
DBComm.ExecuteNonQuery();
3 一些常用的MySQLConnection 的函数集
static void Main(string[] args)
{
string sqlstr = "select * from manavatar";
MySQLConnection DBConn = new MySQLConnection(new MySQLConnectionString("192.168.0.13", "flashdata", "root", "root", 3306).AsString);
DBConn.Open();
//MySQLDataAdapter myadap = new MySQLDataAdapter(sqlstr, conn);
MySQLCommand DBComm = new MySQLCommand(sqlstr,DBConn);
MySQLDataReader DBReader = DBComm.ExecuteReaderEx(); //DBComm.ExecuteReaderEx();
MySQLDataAdapter DTAdapter = new MySQLDataAdapter(sqlstr,DBConn);
DataSet myDataSet = new DataSet();
DTAdapter.Fill(myDataSet,"manavatar");
try
{
while (DBReader.Read())
{
//Console.WriteLine("11");
Console.WriteLine("DBReader:{0},\t\t\tddddd:{1},\t\t {2}",DBReader.GetString(0), DBReader.GetString(1),DBReader.GetString(3));
}
Console.WriteLine("0000");
}
catch (Exception e)
{
Console.WriteLine("读入失败!"+e.ToString());
}
finally
{
Console.WriteLine("DBReader关闭");
Console.WriteLine("DBConn关闭");
DBReader.Close();
//DBConn.Close();
}
for (int i = 0; i < myDataSet.Tables["manavatar"].Rows.Count; i++)
{
Console.WriteLine("{0}",myDataSet.Tables["manavatar"].Rows[2]["user"]);
}
}
这是一个简单的例子。
在这里有个问题:dataset如果没设主键的话,可能会引起一些对数库操作的问题,比如会造成updata出现错误。
4 项目中导入了一个开源的DLL,MySQLDriverCS,他对C#调用MySQL做了很好的封装
5出现了诡异的语句INSERT INTO dic VALUES('/|\','军事20',9,1,0.181818181818182);
主要'/|\'是转义字符,暂时没有很好的解决方法
5 如果要调用generic 的Sort方法,必须实现CompareTo接口。这个接口有一个叫CompareTo(object)方法,如果“this”大于、小于 ...
如果想使用Array等的Find方法,必须重载Equals()方法,因为任何类都是继承Object类的。
6 无法显示 XML 页。
使用 XSL 样式表无法查看 XML 输入。请更正错误然后单击 刷新按钮,或以后重试。
--------------------------------------------------------------------------------
名称以无效字符开头。处理资源 'http://localhost/Asp.net/Default.aspx' 时出错。第 1 行,位置: 2
<%@ Page Language="C#" AutoEventWireup="true" CodeFile="Default.aspx.cs" Inherits="_Default" %>
===================
解决办法:运行vs2005命令行(开始、所有程序、vs2005、tools,写得不准确),之后找到.net2.0的路径,我的是在C:\WINDOWS\Microsoft.NET\Framework\v2.0.50727,之后运行aspnet_regiis.exe /i,就ok了。
(待续)
2007年5月14日星期一
MySQL常用命令(ZZ)
MySQL常用命令
建立库:
create database sss
使用库:
use sss
显示库:
show databases
删除库:
drop database sss
建立表:
create table object (obj_id numeric(10),obj_ra numeric(8,5),obj_de numeric(8,5),obj_mag numeric(4,2))
显示表:
show tables
显示表的结构:
describe object
删除表:
drop table object
授权外部连接:
grant all on sss.object to sss@192.168.1.12 identified by 'mysql'
# casularm 发表于2006-04-06 14:59:00 IP: 218.104.71.*
MySQL常用操作
启动:
/etc/init.d/mysql start
关闭:
/usr/bin/mysqladmin -u root -p shutdown
登陆:
mysql -uroot -p
# casularm 发表于2006-08-13 21:13:00 IP: 211.162.10.*
从外部文件向表中批量导入数据
load data infile 'e:/Data/minifiber.csv' into table minifiber fields terminated by ',';
# casularm 发表于2006-08-30 11:16:00 IP: 211.162.6.*
1.备份服务器数据:
mysqldump -h服务器IP地址 -u用户名 -p密码 --opt 数据库名>备份数据库名
例如:
mysqldump -h 192.168.1.100 -u sss -p --opt sss >sss_backup.sql
这条命令将服务器192.168.1.100上的sss这个数据库备份到本地计算机当前目录的sss_backup.sql这个文件中,这样,当数据库不小心损坏或数据丢失时,就可以由sss_backup.sql这个备份文件恢复了
2. 导入.sql数据到mysql数据库
mysql -h服务器IP地址 -u用户名 -p密码 -f -D 数据库名
备份文件名
例如:
mysql -h 192.168.1.100 -u sss -p -f -D sss 这条命令会将sss_backup.sql这个文件中的数据重新恢复到服务器sss数据库中。
3.注意事项
如果是新安装的数据库,需要新建个sss库
create database sss
备份和导入都要有sss数据库的权限
grant all on sss.* to sss@192.168.1.100 identified by 'mysql'
# casularm 发表于2006-10-29 17:06:00 IP: 211.162.10.*
使用PowerDesigner设计建造MySQL数据库
一、使用PowerDesigner制作建库脚本
1、设计CDM(Conceptual Data Model)
2、选择 Tools -> Generate Physical Data Model ,选择对应的DBMS为MySQL,生成PDM
3、选择 Database -> Generate Database ,在弹出的 Database Generation 对话框中选择脚本存取路径及脚本文件名称
4、点击确定后生成数据库建库脚本(*.sql)
二、使用建库脚本建立数据库
1、登陆 mysql -u root -p
2、建立空的databse create databse sss;
3、建立用户 grant all on sss.* to sss@192.168.1.100 identified by 'mysql';
4、退出 exit;
5、在终端中输入 mysql -h 192.168.1.100 -u sss -p < Script.sql
6、回车后输入密码即可
修改某个表的字段类型及指定为空或非空
>alter table 表名称 change 字段名称 字段名称 字段类型 [是否允许非空];
>alter table 表名称 modify 字段名称 字段类型 [是否允许非空];
修改某个表的字段名称及指定为空或非空
>alter table 表名称 change 字段原名称 字段新名称 字段类型 [是否允许非空];
例如:
修改表expert_info中的字段birth,允许其为空
>alter table expert_info change birth birth varchar(20) null;
mysql> ALTER TABLE t2 MODIFY a TINYINT NOT NULL, CHANGE b c CHAR(20);
添加新字段 d:
mysql> ALTER TABLE t2 ADD d TIMESTAMP;
在a d 上增加索引:
mysql> ALTER TABLE t2 ADD INDEX (d), ADD INDEX (a);
删除字段c:
mysql> ALTER TABLE t2 DROP COLUMN c;
添加一个自动增长的字段c ,并且添加c 为主健:
mysql> ALTER TABLE t2 ADD c INT UNSIGNED NOT NULL AUTO_INCREMENT,
-> ADD PRIMARY KEY (c);
建立库:
create database sss
使用库:
use sss
显示库:
show databases
删除库:
drop database sss
建立表:
create table object (obj_id numeric(10),obj_ra numeric(8,5),obj_de numeric(8,5),obj_mag numeric(4,2))
显示表:
show tables
显示表的结构:
describe object
删除表:
drop table object
授权外部连接:
grant all on sss.object to sss@192.168.1.12 identified by 'mysql'
# casularm 发表于2006-04-06 14:59:00 IP: 218.104.71.*
MySQL常用操作
启动:
/etc/init.d/mysql start
关闭:
/usr/bin/mysqladmin -u root -p shutdown
登陆:
mysql -uroot -p
# casularm 发表于2006-08-13 21:13:00 IP: 211.162.10.*
从外部文件向表中批量导入数据
load data infile 'e:/Data/minifiber.csv' into table minifiber fields terminated by ',';
# casularm 发表于2006-08-30 11:16:00 IP: 211.162.6.*
1.备份服务器数据:
mysqldump -h服务器IP地址 -u用户名 -p密码 --opt 数据库名>备份数据库名
例如:
mysqldump -h 192.168.1.100 -u sss -p --opt sss >sss_backup.sql
这条命令将服务器192.168.1.100上的sss这个数据库备份到本地计算机当前目录的sss_backup.sql这个文件中,这样,当数据库不小心损坏或数据丢失时,就可以由sss_backup.sql这个备份文件恢复了
2. 导入.sql数据到mysql数据库
mysql -h服务器IP地址 -u用户名 -p密码 -f -D 数据库名
备份文件名
例如:
mysql -h 192.168.1.100 -u sss -p -f -D sss
3.注意事项
如果是新安装的数据库,需要新建个sss库
create database sss
备份和导入都要有sss数据库的权限
grant all on sss.* to sss@192.168.1.100 identified by 'mysql'
# casularm 发表于2006-10-29 17:06:00 IP: 211.162.10.*
使用PowerDesigner设计建造MySQL数据库
一、使用PowerDesigner制作建库脚本
1、设计CDM(Conceptual Data Model)
2、选择 Tools -> Generate Physical Data Model ,选择对应的DBMS为MySQL,生成PDM
3、选择 Database -> Generate Database ,在弹出的 Database Generation 对话框中选择脚本存取路径及脚本文件名称
4、点击确定后生成数据库建库脚本(*.sql)
二、使用建库脚本建立数据库
1、登陆 mysql -u root -p
2、建立空的databse create databse sss;
3、建立用户 grant all on sss.* to sss@192.168.1.100 identified by 'mysql';
4、退出 exit;
5、在终端中输入 mysql -h 192.168.1.100 -u sss -p < Script.sql
6、回车后输入密码即可
修改某个表的字段类型及指定为空或非空
>alter table 表名称 change 字段名称 字段名称 字段类型 [是否允许非空];
>alter table 表名称 modify 字段名称 字段类型 [是否允许非空];
修改某个表的字段名称及指定为空或非空
>alter table 表名称 change 字段原名称 字段新名称 字段类型 [是否允许非空];
例如:
修改表expert_info中的字段birth,允许其为空
>alter table expert_info change birth birth varchar(20) null;
mysql> ALTER TABLE t2 MODIFY a TINYINT NOT NULL, CHANGE b c CHAR(20);
添加新字段 d:
mysql> ALTER TABLE t2 ADD d TIMESTAMP;
在a d 上增加索引:
mysql> ALTER TABLE t2 ADD INDEX (d), ADD INDEX (a);
删除字段c:
mysql> ALTER TABLE t2 DROP COLUMN c;
添加一个自动增长的字段c ,并且添加c 为主健:
mysql> ALTER TABLE t2 ADD c INT UNSIGNED NOT NULL AUTO_INCREMENT,
-> ADD PRIMARY KEY (c);
订阅:
博文 (Atom)