CentOS 安装中文语言包

CentOS系统英文版下如何安装中文语言包

CentOS系统安装过程中,安装语言包时选择了english,在安装完毕后浏览中文网页或查看中文文档时总是宣誓乱码,因此需要安装中文语言包,如果不能从安装盘进行安装,可以通过yum进行安装,安装办法为:yum groupinstall -support

在上面的命令中, 是下列之一: assamese, bengali, chinese, gujarati, hindi, japanese, kannada, korean, malayalam, marathi, oriya, punjabi, sinhala, tamil, thai, 或 telegu。VNC
xsetroot -solid grey
vncconfig -iconic &
#xterm -geometry 80×24+10+10 -ls -title “$VNCDESKTOP Desktop” &
gnome-session &
startkde &
twm &

CentOS 桌面安装

1.显示系统已经安装的组件,和可以安装的组件:

#yum grouplist

2.如果系统安装之初采用最小化安装,没有安装xwindow,那么先安装:

#yum groupinstall “X Window System”

3.安装GNOME桌面环境

yum groupinstall “GNOME Desktop Environment”

4.安装KDE桌面环境

yum groupinstall “KDE (K Desktop Environment)”

5.卸载GNOME桌面环境

yum groupremove “GNOME Desktop Environment”

6.卸载KDE桌面环境

yum groupremove “KDE (K Desktop Environment)”

kde安装 1 2 4

 

开机为文本界面,由文本界面切换到图形界面:

方法1:运行命令

#startx , 需要先配置图形界面信息

方法2:修改/etc/inittab文件中的

id:3:initdefault , 将3改为5 ,重新启动系统;

方法3:进入图形界面: init 5

从图形界面进入文本界面: init 3

重启: init 6

关机: init 3

真机环境中,在图形界面和文本界面间快捷键切换:

Ctrl+Alt+F(n) , 其中F(n)为F1-F6 ,为6个控制台;

Ctrl+ALT+F7 ;

eg:CTRL+ALT+F1是进入文本界面,CTRL+ALT+F7才是图形界面。

 

虚拟机环境,在图形界面和文本界面间切换:

VMWare虚拟机下,由图形界面切换到文本界面,和虚拟机设置有关,默认VM占用Ctrl+Alt为热键,所以由图形界面切换到文本界面的组合键为:

Ctrl+Alt+Shift+F(n) ,其中F(n)为F1-F6 ;

由文本界面切换回图形界面的组合键为:

Alt+F7 ;

在文本界面不同控制台界面之间切换:

Alt+F(n) , 其中F(n)为F1-F6,为6个控制台;

HP N40L Micro Server resources

http://www.kiiku.com/ocau/HP_N36L/BIOS_UPDATE_ACHI/

HP_EXE : The original HP Executable to create the bootable USB
HP_UNZIPPED : The above executable unzipped
UPDATE_BIOS_041 : Updated Bios

To create the bootable USB

1. run the HPQUSB.exe file from the unzipped HP executable.
__This creates a bootable USB ready to plug in
2. Replace the “O41093010.ROM” file with the updated ROM file from the “UPDATE_BIOS_041″ directory.
__*note 1* The O41093010.ROM file in that directory is the same as the O41_AHCI.ROM file. I just renamed it to make it easier.
__*note 2* This is a 1 step slipstream process. The original instructions tell you to update to the HP bios with the USB update then update again (using achi.bat) to the modified bios. By replacing the original file with the O41093010.ROM file in my directory, you’re updating to the correct bios on bootup.
3. Plug it in your machine and reboot.

Database note 1

Copy table

insert into (newtable) select [columns] from (oldtable)

Add columns

alter table (table_name) add (column name) (type)

Drop Columns

ALTER TABLE table_name DROP COLUMN name

Add foreign key

alter table state_naicssector add foreign key (state_code) references state (state_code) enable;

Like

select * from table where name = ‘_f%’   _ is one byte, % is

Rename table name

ALTER TABLE old_table_name RENAME TO new_table_name;

Rename column name

ALTER TABLE table_name RENAMECOLUMN old_name to new_name;

Java中for循环的6种写法

package stytle;

import java.util.ArrayList;
import java.util.Iterator;
import java.util.List;

/**
* @author buru
* @date 2009年11月29日15:04:04
* @qq 258274473
* @email shaliebao@163.com
* */
public class ForLoop {

/**
* just for test
*
* @param args
*/
public static void main(String[] args) {

List<String> list = new ArrayList<String>();
list.add(“sha”);
list.add(“lie”);
list.add(“bao”);

/**
* 方法一:最普通的不加思考的写法
* <p>
* 优点:较常见,易于理解
* <p>
* 缺点:每次都要计算list.size()
*/
for (int i = 0; i < list.size(); i++) {
System.out.println(list.get(i));
}
/**
* 方法二:数组长度提取出来
* <p>
* 优点:不必每次都计算
* <p>
* 缺点:1、m的作用域不够小,违反了最小作用域原则 2、不能在for循环中操作list的大小,比如除去或新加一个元素
*/
int m = list.size();
for (int i = 0; i < m; i++) {
System.out.println(list.get(i));
}
/**
* 方法三:数组长度提取出来
* <p>
* 优点:1、不必每次都计算 2、所有变量的作用域都遵循了最小范围原则
* <p>
* 缺点:1、m的作用域不够小,违反了最小作用域原则 2、不能在for循环中操作list的大小,比如除去或新加一个元素
*/
for (int i = 0, n = list.size(); i < n; i++) {
System.out.println(list.get(i));
}
/**
* 方法四:采用倒序的写法
* <p>
* 优点:1、不必每次都计算 2、所有变量的作用域都遵循了最小范围原则
* <p>
* 缺点:1、结果的顺序会反 2、看起来不习惯,不易读懂
* <p>
* 适用场合:与显示结果顺序无关的地方:比如保存之前数据的校验
*/
for (int i = list.size() – 1; i >= 0; i–) {
System.out.println(list.get(i));
}
/**
* 方法五:Iterator遍历
* <p>
* 优点:简洁
* <p>
* 缺点:
*/
for (Iterator<String> it = list.iterator(); it.hasNext();) {
System.out.println(it.next());
}
/**
* 方法六:jdk1.5新写法
* <p>
* 优点:简洁结合泛型使用更简洁
* <p>
* 缺点:jdk1.4向下不兼容
*/
for (Object o : list) {
System.out.println(o);
}

}
}

 

此外不要在for循环内部声明变量

bad:
for(;;){
Object obj = new Object();
}

good:
Object obj=null;
for(;;){
obj = new Object();
}

ORA–00942 错误的解决方法之一

ORACLE10g数据库,Sqlserver通过DTS导出数据到ORACLE后。查询表数据时输入:
select * from “表名” ;
查询数据执行正常。
如果输入:select * from 表名;
提示ORA-000942表或视图不存在

 

后来发现原因是:导入oracle数据库后,表名在数据字典中是小写的。而用oracle数据库建的表,在数据字典中存的是大写的表名。所以要加双引号。(在oracle中要用特殊表名时,即用到oracle规定的合法字符之外的字符,建表、查询时,表名也要加双引号)。

 

于是想批量将表名改为大写,方便写查询语句

 

方法如下:在PL/SQL中执行下面sql

select ‘alter table “‘||table_name||’” rename to ‘||upper(table_name)||’;’ from user_tables where table_name<>upper(table_name);

 

生成修改表名语句

然后在执行这些alter语句就可以了。

Oracle 数据库中实现自增长

先建一个类似这样的自增长,保存后,它会存在于-- Sequence
create sequence ClassIDSeq
minvalue 1
maxvalue 999
start with 1
increment by 1
cache 20
cycle;

然后可以先测试一下 select ClassIDSeq.nextval
然后你插入表时,再调用它
insert into 表名 (orderline) values (smssendseq.nextval)
需要重置sequence start number, 必须先drop sequence,然后重写一次,可以用procedure来写。

Oracle 数据字段类型

字段类型    中文说明    限制条件    其它说明
CHAR    固定长度字符串    最大长度2000    bytes
VARCHAR2    可变长度的字符串    最大长度4000    bytes      可做索引的最大长度749
NCHAR    根据字符集而定的固定长度字符串    最大长度2000    bytes
NVARCHAR2    根据字符集而定的可变长度字符串    最大长度4000    bytes
DATE    日期(日-月-年)    DD-MM-YY(HH-MI-SS)    经过严格测试,无千虫问题
LONG    超长字符串    最大长度2G(231-1)    足够存储大部头著作
RAW    固定长度的二进制数据    最大长度2000    bytes      可存放多媒体图象声音等
LONG    RAW    可变长度的二进制数据    最大长度2G    同上
BLOB    二进制数据    最大长度4G
CLOB    字符数据    最大长度4G
NCLOB    根据字符集而定的字符数据    最大长度4G
BFILE    存放在数据库外的二进制数据    最大长度4G
ROWID    数据表中记录的唯一行号    10    bytes    ********.****.****格式,*为0或1
NROWID    二进制数据表中记录的唯一行号    最大长度4000    bytes
NUMBER(P,S)    数字类型    P为整数位,S为小数位
DECIMAL(P,S)    数字类型    P为整数位,S为小数位
INTEGER    整数类型    小的整数
FLOAT    浮点数类型    NUMBER(38),双精度
REAL    实数类型    NUMBER(63),精度更高
数据类型 参数 描述
char(n) n=1 to 2000字节 定长字符串,n字节长,如果不指定长度,缺省为1个字节长(一个汉字为2字节)
varchar2(n) n=1 to 4000字节 可变长的字符串,具体定义时指明最大长度n,
这种数据类型可以放数字、字母以及ASCII码字符集(或者EBCDIC等数据库系统接受的字符集标准)中的所有符号。
如果数据长度没有达到最大值n,Oracle 8i会根据数据大小自动调节字段长度,
如果你的数据前后有空格,Oracle 8i会自动将其删去。VARCHAR2是最常用的数据类型。
可做索引的最大长度3209。
number(m,n) m=1 to 38
n=-84 to 127 可变长的数值列,允许0、正值及负值,m是所有有效数字的位数,n是小数点以后的位数。
如:number(5,2),则这个字段的最大值是99,999,如果数值超出了位数限制就会被截取多余的位数。
如:number(5,2),但在一行数据中的这个字段输入575.316,则真正保存到字段中的数值是575.32。
如:number(3,0),输入575.316,真正保存的数据是575。
date 无 从公元前4712年1月1日到公元4712年12月31日的所有合法日期,
Oracle 8i其实在内部是按7个字节来保存日期数据,在定义中还包括小时、分、秒。
缺省格式为DD-MON-YY,如07-11月-00 表示2000年11月7日。
long 无 可变长字符列,最大长度限制是2GB,用于不需要作字符串搜索的长串数据,如果要进行字符搜索就要用varchar2类型。
long是一种较老的数据类型,将来会逐渐被BLOB、CLOB、NCLOB等大的对象数据类型所取代。
raw(n) n=1 to 2000 可变长二进制数据,在具体定义字段的时候必须指明最大长度n,Oracle 8i用这种格式来保存较小的图形文件或带格式的文本文件,如Miceosoft Word文档。
raw是一种较老的数据类型,将来会逐渐被BLOB、CLOB、NCLOB等大的对象数据类型所取代。
long raw 无 可变长二进制数据,最大长度是2GB。Oracle 8i用这种格式来保存较大的图形文件或带格式的文本文件,如Miceosoft Word文档,以及音频、视频等非文本文件。
在同一张表中不能同时有long类型和long raw类型,long raw也是一种较老的数据类型,将来会逐渐被BLOB、CLOB、NCLOB等大的对象数据类型所取代。
blob
clob
nclob 无 三种大型对象(LOB),用来保存较大的图形文件或带格式的文本文件,如Miceosoft Word文档,以及音频、视频等非文本文件,最大长度是4GB。
LOB有几种类型,取决于你使用的字节的类型,Oracle 8i实实在在地将这些数据存储在数据库内部保存。
可以执行读取、存储、写入等特殊操作。
bfile 无 在数据库外部保存的大型二进制对象文件,最大长度是4GB。
这种外部的LOB类型,通过数据库记录变化情况,但是数据的具体保存是在数据库外部进行的。
Oracle 8i可以读取、查询BFILE,但是不能写入。
大小由操作系统决定。
数据类型是列或存储过程中的一个属性。
Oracle支持的数据类型可以分为三个基本种类:字符数据类型、数字数据类型以及表示其它数据的数据类型。
字符数据类型
CHAR             char数据类型存储固定长度的字符值。一个CHAR数据类型可以包括1到2000个字符。如果对CHAR没有明确地说明长度,它的默认长度则设置为1。 如果对某个CHAR类型变量赋值,其长度小于规定的长度,那么Oracle自动用空格填充。
VARCHAR2 存储可变长度的字符串。虽然也必须指定一个VARCHAR2数据变量的长度,但是这个长度是指对该变量赋值的最大长度而非实际赋值长度。不需用空格填充。 最多可设置为4000个字符。因为VARCHAR2数据类型只存储为该列所赋的字符(不加空格),所以VARCHAR2需要的存储空间比CHAR数据类型 要小。
Oracle推荐使用VARCHAR2
NCHAR和NVARCHAR2 NCHAR和NVARCHAR2数据类型分别存储固定长度与可变长度的字符串,但是它们使用的是和数据库其他类型不同的字符集。在创建数据库时,需要指定 所使用的字符集,以便对数据中数据进行编码。还可以指定一个辅助的字符集[即本地语言集]。NCHAR和NVARCHAR2类型的列使用辅助字符集。 NCHAR和NVARCHAR2类型的列使用辅助字符集。
在Oracle 9i中,可以以字符而不是字节为单位表示NCHAR和NVARCHAR2列的长度。
LONG long数据类型可以存放2GB的字符数据,它是从早期版本中继承下来的。现在如果存储大容量的数据,Oracle推荐使用CLOB和NCLOB数据类型。在表和SQL语句中使用LONG类型有许多限制。
CLOB和NCLOB    CLOB和NCLOB数据类型可以存储多达4GB的字符数据。NCLOB数据类型可存储NLS数据。
数字数据类型
Oracle使用标准、可变长度的内部格式来存储数字。这个内部格式精度可以高达38位。
NUMBER数据类型可以有两个限定符,如:column NUMBER(precision,scale)。precision表示数字中的有效位。如果没有指定precision的话,Oracle将使用38 作为精度。scale表示小数点右边的位数,scale默认设置为0。如果把scale设成负数,Oracle将把该数字取舍到小数点左边的指定位数。
日期数据类型
Oracle标准日期格式为:DD-MON-YY HH:MI:SS
通过修改实例的参数NLS_DATE_FORMAT,可以改变实例中插入日期的格式。在一个会话期间,可以通过Alter session SQL命令来修改日期,或者通过使用SQL语句的TO_DATE表达式中的参数来更新一个特定值。
其它的数据类型
RAW和LONG RAW    RAW和LONG RAW数据类型主要用于对数据库进行解释。指定这两种类型时,Oracle以位的形式来存储数据。RAW数据类型一般用于存储有特定格式的对象,如位图。 RAW数据类型可占用2KB的空间,而LONG RAW数据类型则可以占用2GB大小。
ROWID ROWID是一种特殊的列类型,称之为伪列(pseudocolumn)。ROWID伪列在SQL SELECT语句中可以像普通列那样被访问。Oracle数据库中每行都有一个伪列。ROWID表示行的地址,ROWID伪列用ROWID数据类型定义。
ROWID与磁盘驱动的特定位置有关,因此,ROWID是获得行的最快方法。但是,行的ROWID会随着卸载和重载数据库而发生变化,因此建议不要在事务 中使用ROWID伪列的值。例如,一旦当前应用已经使用完记录,就没有理由保存行的ROWID。不能通过任何SQL语句来设置标准的ROWID伪列的值。
列或变量可以定义成ROWID数据类型,但是Oracle不能保证该列或变量的值是一个有效的ROWID。
LOB(大型对象)数据类型,可以保存4GB的信息。LOB有以下3中类型:
<CLOB>,只能存储字符数据
<NCLOB>,保存本地语言字符集数据
<BLOB>    ,以二进制信息保存数据
可以指定将一个LOB数据保存在Oracle数据库内,还是指向一个包含次数据的外部文件。
LOB可以参与事务。管理LOB中的数据必须通过DBMS_LOB PL/SQL内置软件包或者OGI接口。
为了便于将LONG数据类型转换成LOB,Oracle 9i包含许多同时支持LOB和LONG的函数,喊包括一个ALTER TABLE语句的新选择,它允许将LONG数据类型自动转换成LOB。
BFILE
BFILE数据类型用做指向存储在Oracle数据库以外的文件的指针。
XML Type
作为对XML支持的一部分,Oracle 9i包含了一个新的数据类型XML Type。定义为XMLType的列将存储一个字符LOB列中的XML文档。有许多内置的功能可以使你从文档中抽取单个节点,还可以在XML Type文档中对任何节点创建索引。
用户自定义数据
从Oracle 8以后,用户可以定义自己的复杂数据类型,它们由Oracle基本数据类型组合而成。
AnyType、AnyData和AnyDataSet
Oracle包括3个新的数据类型,用于定义在现有数据类型之外的数据结构。其中每种数据类型必须用程序单元来定义,以便让Oracle9i知道如何处理这些类型的特定实现。
类型转换
Oracle会自动将某些数据类型转换成其他的数据类型,转换取决于包括该值的SQL语句。
数据转换还可以通过Oracle的类型转换函数显示地进行。
连接与比较
在大多数平台上Oracle SQL中的连接操作符用两条竖线(||)表示。连接是将两个字符值连接。Oracle的自动类型转换功能使得两个数字值也可以进行连接。
NULL
NULL值是关系数据库的重要特征之一。实际上,NULL不代表任何值,它表示没有值。如果要创建表的一个列,而这个列必须有值,那么应将它指定为NOT NULL,这表示该列不能包含NULL值。
任何数据类型都可以赋予NULL值。NULL值引入了SQL运算的三态逻辑。如果比较的一方是NULL值,那么会出现3种状态:TURE、FALSE以及两者都不是。
因为NULL值不等于0或其他任何值,所以测试某个数据是否为NULL值只能通过关系运算符IS NULL来进行。
NULL值特别适合以下情况:当一个列还未赋值时。如果选择不使用NULL值,那么必须对行的所有列都要赋值。这实际上也取消了某列不需要值的可能性,同时对它赋的值也很容易产生误解。这种情况则可能误导终端用户,并且导致累计操作的错误结果。
number(p,s)
p:1~38
s:-84~127
p>0,对s分2种情况:1. s>0
精确到小数点右边s位,并四舍五入。然后检验有效数位是否<=p;如果s>p,小数点右边至少有s-p个0填充。
2. s<0
精确到小数点左边s位,并四舍五入。然后检验有效数位是否<=p+|s|
123.2564 NUMBER 123.2564
1234.9876 NUMBER(6,2) 1234.99
12345.12345 NUMBER(6,2) Error
1234.9876 NUMBER(6) 1235
12345.345 NUMBER(5,-2) 12300
1234567 NUMBER(5,-2) 1234600
12345678 NUMBER(5,-2) Error
123456789 NUMBER(5,-4) 123460000
1234567890 NUMBER(5,-4) Error
12345.58 NUMBER(*, 1) 12345.6
0.1 NUMBER(4,5) Error
0.01234567 NUMBER(4,5) 0.01235
0.09999 NUMBER(4,5) 0.09999

作者“时间珍贵,努力学习”