Python Qt4 설치

Programming/etc 2014. 9. 15. 02:41 |


PyQt 와 PySide 의 차이점


큰 틀로 봤을 때, import name(PySide.QtCore import * 등등) 만 바꿔주면 된다. 


qrc 파일 (resource file)을 .py로 바꾸는 방법

pyrcc4 -o qrc_xxx.py input_xxx.qrc

pyrcc4 -py3 -o qrc_xxx.py input_xxx.qrc (python 3에서는 -py3 option이 필요하다)

(PySide 에서는 pyside-rcc 를 사용한다)


ui 파일 (Qt designer 출력 파일) 을 .py로 바꾸는 법

pyuic4 -o ui_xxx.py input_xxx.ui

(PySide에서는 pyside-uic 를 사용한다)


SIP 설치

Qt Library를 모두 설치하였다면,

http://www.riverbankcomputing.co.uk/software/sip/download

여기로 가서 sip를 다운받고 설치해야 한다. PyQt 는 sip에 의존하기 때문이다.

# python ./configure.py

--prefix를 설정하지 않았는데, 이는 configure.py를 실행하는 python의 site-packages 디렉토리 밑으로 해당 확장 패키지가 설치되기 때문이다.

만약, "/usr/bin/python ./configure.py" 로 진행하면 "/usr/lib/python2.x/site-packages/" 밑으로 확장 패키지가 설치 된다.

# make

# make install


PyQt4 설치

http://www.riverbankcomputing.co.uk/software/pyqt/download

PyQt4를 다운바도 설치한다.

 

### 설치전에 디렉토리를 생성 후 거기서 configure, make, make install 을 실행하자. 이것도 Qt와 마찬가지로 이 안에 예제와 그외의 등등이 들어있는 것이라...

ex) ~/softwares/python/extension/


$ python ./configure.py

$ make

$ make install

$ cd ./examples/widgets/

$ python ./analogclock.py &

C++ Qt 에서 봤던  시계가 나타나면 PyQt가 제대로 설치된 것이다.


# make install 시 에러가 발생한다면, root 권한으로 다시 configure 부터 하면 됨.


PySide 설치

http://saelly.tistory.com/447


'Programming > etc' 카테고리의 다른 글

iPython Install On CentOS7  (0) 2014.09.17
Python matplotlib 설치 및 예제 실행  (1) 2014.09.15
CentOS7 QT5 Setup  (0) 2014.09.15
Linux PHPStrom 설정  (0) 2014.09.06
Installing Xdebug on CentOS  (0) 2014.09.06
Posted by scii
:


Python 내장 함수 중에 any(), all() 함수가 있다.

any([iterable]) -> Bool

any함수는 반복자를 인자로 받아서 참 혹은 거짓을 반환한다. 

any함수는 인자로 들어온 요소중에 하나라도 참이 되는 것이 있으면, 참을 반환하고, 모두 거짓일때만 거짓만 반환한다.

:: 하나라도 참이면 참을 반환한다!


all([iterable]) -> Bool

all함수는 반복자를 인자로 받아서 참 혹은 거짓을 반환한다.

all함수는 인자로 들어온 요소중에 하나라도 거짓이 되는 것이 있으면, 거짓을 반환하고, 모두 참일때만 참을 반환한다.

:: 모두가 참이면 참을 반환한다!


any, all 함수의 예제)


'Programming > Python' 카테고리의 다른 글

[REGEX] 전방 탐색 (Lookahead Assertions), 후방 탐색  (0) 2016.10.08
[REGEX] 그룹 재활용  (0) 2016.10.08
이진 트리  (0) 2013.05.31
bisect Module  (0) 2013.05.17
multiprocessing Module  (0) 2013.05.17
Posted by scii
:

CentOS7 QT5 Setup

Programming/etc 2014. 9. 15. 00:56 |


Qt 를 설치하기 전

yum install -y gcc-c++

yum install -y libX11-devel

yum install -y fontconfig-devel

yum install -y libXcursor-devel

yum install -y libXext-devel

yum install -y libXfixes

yum install -y libXft-devel

yum install -y libXi-devel

yum install -y libXrandr-devel

yum install -y libXrender-devel


이것들의 설치가 필요하다.



http://qt-project.org/downloads

or

https://download.qt.io/archive/qt/4.8/4.8.6/

위의 링크를 타고 qt 홈페이지에 간다.



사진에 있는 것을 다운받는다. qt 라이브러리는 말 그대로 qt를 쓸 수 있도록 제공하는 라이브러리들이다.


qt 설치

qt 라이브러리를 설치해야 qt를 쓸 수있고, PyQt, PySide도 쓸 수 있다.

압축을 풀고 컴파일한다. ./configure 할 때, --prefix를 적절하게 설정한다. --prefix를 하지 않아도 되는데, 하지 않으면 /usr/T~~이라는 곳에 설치된다.

나는 내가 원하는 곳에 설치를하려고 --prefix 옵션을 준 것이다.


$ gmake         # 상당히 오래 걸림.

$ gmake install


모두 설치가 됐다면, .bashrc 유저 환경 설정에 아래의 사진과 같이 경로를 추가한다.


source .bashrc로 환경 설정파일을 갱신시키고,

터미널에서 "qmake" 를 실행시키면 아래와 같이 나온다. 그럼 설치가 완료 된 것이다.


Qt Example 실행



Qt IDLE 설치


======================================================================================


만약, 터미널에서 designer를 실행 했는데 아래와 같은 core dumped가 발생한다면...


환경 변수에 QT_PLUGIN_PATH 를 설정하면 core dumped가 발생하지 않는다.



'Programming > etc' 카테고리의 다른 글

Python matplotlib 설치 및 예제 실행  (1) 2014.09.15
Python Qt4 설치  (0) 2014.09.15
Linux PHPStrom 설정  (0) 2014.09.06
Installing Xdebug on CentOS  (0) 2014.09.06
LAMP (Linux Based Apache, MariaDB, PHP) Install  (0) 2014.08.23
Posted by scii
:


데이터의 삽입

기존 테이블에 행을 삽입할 경우에는 다음과 같은 형식의 insert 문을 사용한다.

insert

into 테이블[(열_이름_리스트)]

values (열값_리스트);

또는

insert

into 테이블[(열_이름_리스트)]

select문;

# 위의 첫 번째 형식은 행을 직접 삽입하는데 사용되고,

두번째 형식은 부속 질의문인 select문을 실행하여 그 결과(일반적으로 복수의 열) 를 지정된 테이블에 삽입하는 경우에 사용한다. 

열의 값과 열의 이름은 그 명시된 순서대로 일 대 일로 대응한다. 만일 열의 이름을 명시하지 않으면 이 테이블 정의문에 명시된 모든 열이 명시된 것으로 취급된다.


레코드의 직업 삽입

query: 학번: 600, 이름: 김 연아, 학년: 1, 학과: 후디니인 학생을 삽입하라.

insert

into student(sno, name, year, dept)

values (600, '김 연아', 1, '후디니');

# 위 예와 같이 학생 테이블에 있는 열의 이름이 모두 명시되고 그 순서가 학생 테이블 정의문에 명시된 순서와 같은 경우에는 다음과 같이 열이름 명시를 생략한 삽입문과 동등하다.

insert

into student

values (600, '김 연아', 1, '후디니');

# 만일 학과의 이름을 모든다고 하면 '학과'에 해당하는 난을 공백으로 남겨 두면 된다. 이때 이 값은 NULL 값으로 취급된다. 

그렇지 않으면 다음과 같이 삽입하려는 데이터값의 열이름과 함께 일 대 일로 명시해도 같은 결과가 된다.

insert

into student(sno, name, year)

values (600, '김 연아', 1);

# 하나의 insert문으로 여러 개의 행을 삽입할 수 있는데 이때는 한 행에 해당하는 값들을 괄호로 묶어 표시하면 된다.


부속 질의문을 이용한 레코드 삽입

query: 학생 테이블에서 컴퓨터과 학생의 학번, 이름, 학년을 검색하여 테이블 컴퓨터(computer)에 삽입하라.

insert

into computer(sno, name, year)

select sno, name, year

from student

where dept = '컴퓨터';

# 이 예에서는 테이블 컴퓨터가 존재하고 적어도 학번, 이름, 학년 열을 가지고 있다는 것을 가정하였다. 

만일 그렇지 않은 경우에는 이 테이블을 먼저 create table 문을 이용하여 생성한 다음 삽입해야 된신다. 이 질의문의 실행은 into 다음의 부속 질의문(select)을 먼저 실행하고 그 검색 결과를 전부 컴퓨터과 테이블에 삽입한다.


'Programming > DataBase' 카테고리의 다른 글

keywork BETWEEN, IN  (0) 2016.08.15
Basic  (0) 2016.07.31
SQL 데이터 조작문 - 데이터 갱신  (0) 2014.09.08
SQL 데이터 조작문 - 데이터 검색  (0) 2014.09.07
데이터베이스의 개요  (0) 2014.09.07
Posted by scii
:


데이터의 갱신

기존 레코드의 열 값을 변경하기 위해서는 다음과 같은  update 명령문을 사용한다.

update 테이블

set {열_이름 = 산술식}

[where 조건];

# 새로 변경되는 값은 산술식이나 NULL(허용이 되는 경우에만)이 될 수 있다. 

where 절이 명시되면 조건을 만족하는 모든 레코드들이 set 절에 지시된 대로 변경된다.


하나의 레코드 변경

query: 학번이 300인 학생의 학년을 2로 변경하라.

update student

set year =2

where sno = 300;


복수의 레코드 변경

query: 컴퓨터과 과목의 학점(creadit)을 1학점씩 증가시켜라.

update course

set creadit = credit + 1

where dept = '컴퓨터';


부속 질의문을 이용한 변경

query: 컴퓨터과 학생의 기말 성적을 5점씩 감점하라.

update enrol

set final = final - 5

where sno in

(select sno

from student

where dept = '컴퓨터');


query: 4학년 학생의 학과를 '데이타베이스' 과목을 개설한 학과로 갱신하라.

update student

set dept = (select dept

from course

where cname = '데이터베이스')

where year = 4;



'Programming > DataBase' 카테고리의 다른 글

keywork BETWEEN, IN  (0) 2016.08.15
Basic  (0) 2016.07.31
SQL 데이터 조작문 - 데이터 삽입  (0) 2014.09.08
SQL 데이터 조작문 - 데이터 검색  (0) 2014.09.07
데이터베이스의 개요  (0) 2014.09.07
Posted by scii
:


데이터 검색

SQL 검색문의 기본적인 구조

select 열_리스트

from 테이블_리스트

where 조건

예를 들어, '컴퓨터과 학생의 이름(name)과 학번(sno)을 검색하라는 검색문은 다음과 같이 표현한다.

select name, sno

from student

where dept = '컴퓨터';


테이블의 열 전부를 검색하는 경우

select *

from student;


조건 검색

query: 학생(student) 테이블에서 학과(dept)가 '컴퓨터'이고 학년(year)이 4인 학생의 학번(sno)과 이름(name)을 검색하라.

select sno, name

from student

where dept = '컴퓨터' and year = 4;

# 일반적으로 where절에 나오는 조건식에는 비교 연산자 ==, !=, >=, <=, >, < 등과 불리언 연산자 and, or 그리고 not 을 사용할 수 있다. 또한 필요한 경우에 괄호를 사용할 수 있다.


순서를 명시하는 검색

query: 등록(enrol) 테이블에서 중간성적(midterm)이 90점 이상인 학생의 학번(sno)과 과목번호(cno)를 검색하되 학번(sno)에 대해서는 내림차순으로, 또 같은 학번에 대해서는 과목번호(cno)의 오름차순으로 검색하라.

select sno, cno

from enrol

where midterm >= 90

order by sno desc, cno asc;

# 일반적으로 검색 결과는 시스템이 정하는 순서에 따라 출력된다. 그러나 사용자가 검색 결과의 순서를 오름차순(asc) 이나 내림차순(desc)을 명시할 수 있다. 여기서 처음 나온 sno는 1차(주) 정렬이고, 두 번째 나온 cno는 2차(부) 정렬이다. 2차 정렬은 1차 정렬 범위내에서 정렬시키는 것을 말한다.


산술식과 문자 스트링이 명시된 검색

query: 등록(enrol) 테이블에서 과목번호(cno)가 'C312'인 중간성적(midterm)에 3점을 더한 점수를 학번(sno), '중간성적 =' 이란 텍스트를 갖는 시험, 그리고 점수라는 열이름으로 검색하라.

select sno as '학번', '중간시험=' as 시험, midterm+3 as '점수'

from enrol

where cno = 'C312';

# 일반적으로 select 절에는 열이름뿐만 아니라 문자 스트링을 명시할 수 있으며 열이름, 상수 그리고 산술 연산자로 구성된 산술식이 나타날 수 있다. 필요한 경우에 괄호를 산술식에 사용할 수 있다. 

"as  학번" 이라는 명시는 sno의 별명을 지정한 것이다. "as 시험"과 "as 점수"가 명시되지 않았다면 열이름이 공백이 되었을 것이다 .뒤에 나오는 질의문 예는 편의상 모두 적절히 별명이 명시된 것으로 가정한다.


복수 테이블로부터의 검색

query: 과목번호(cno) 'C413'에 등록한 학생의 이름(name), 학과(dept), 성적(grade)를 검색하라.

select student.name, student.dept, enrol.grade

from student, enrol

where student.sno = enrol.sno 

and enrol.cno = 'c413';

# 관계 데이타베이스 시스템이 다른 유형의 데이타베이스 시스템에 비해 강력한 점은 둘 이상의 테이블을 조인할 수 있다는 것이다. 위의 예는 SQL에서 조인이 어떻게 표현되는가를 보여주고 있다. 

조인 검색은 FROM 절에 관련 테이블들을 여러 개 명시할 수 있다는 것이다. 이때 열이름이 모호하게 되면 열이름을 붙인 한정된 열이름을 써야 한다.

이 조인이 필요한 테이블을 SQL2에서는 사용자가 FROM절에 직접 명시할 수 있도록 하고 있는데 다음 세 가지 형태가 있다.

1. 테이블1 join 테이블2 on 조건식

2. 테이블1 join 테이블2 using(열_리스트)

3. 테이블1 natural join 테이블2

따라서 앞의 질의문을 이 형식으로 표현하면 다음과 같다.

select name, dept, grade

from student join enrol on (student.sno = enrol.sno)

where enrol.cno = 'C413';


select name, dept, grade

from student join enrol using(sno)

where enrol.cno = 'C413';


select name, dept, grade

from student natural join enrol

where enrol.cno = 'C413';

# 이 세 형식은 모두 그 의미가 동등하지만 표현에 약간의 차이가 있다. 

형식 1은 where절에서 명시하는 조인 조건을 from 절로 옮긴 것과 같다. 

형식 2는 열_리스트에 나열된 공통 열을 이용하여 동등 조인한 것인데 공통 열은 결과 테이블에 한 번씩 다른 나머지 열보다 먼저 나타난다.

형식 3은 조인되는 두 테이블에 공통되는 모든 열을 포함시킨 동등 조인으로 공통 열은 결과 테이블에 한 번씩 왼쪽에 먼저 나타난다.


자기 자신의 테이블에 조인하는 검색

query: 같은 학과 학생들의 학번을 쌍으로 검색하라. 단, 첫 번째 학번은 두 번째 학번보다 적게하라.

select s1.sno, s2.sno

from student s1, student s2

where s1.dept = s2.dept

and s1.sno < s2.sno;


집단 함수(aggregate function) 를 이용한 검색

'학생수는 몇 명인가?' 하는 간단한 잘의어는 지금까지 나열한 것으로 표현할 수 있다. 이런 문제를 해결하기 위하여 SQL은 특별히 집단 함수 또는 열함수(column function) 를 제공하고 있다. 이 집단 함수에는 count, sum, avg, max, min이 있는데 이들의 기능들은 한 열의 값 집합에 적용하여 다음과 같은 결과를 생성한다.

count : 값의 개수

sum : 값의 총계

avg : 평균 값

max : 최대 값

min : 최소 값

물론 sum, avg는 수값에만 적용된다.


query: 학생 테이블에 학생수가 얼마인가를 검색하라.

select count(*) as 학생수

from student;

# count(*)의 처리 대상은 행(튜플)의 집합이고 그 결과는 그 집합에 속하는 행의 수이다. 이때 중복되는 행도 함께 포함된다.


query: 학번(sno) 이 300인 학생이 등록한 과목(cno)은 몇 개인가?

select count(distinct cno)

from enrol

where sno = 300;

# 수를 계산하려면 count(distinct 열_이름) 으로 명시하면 된다. 명시된 열에 속한 값의 집합에서 상이한 값만을 대상으로 sum이나 avg를 구할 때는 "DISTINCT"를 명시해야 한다.


query: 과목 C413에 대한 중간 성적의 평균은 얼마인가?

select avg(midterm) as 평균점수

from enrol

where cno = 'C413';

# avg 함수 결과값의 타입은 해당 열의 데이타 타입과 같다.


Group By를 이용한 검색

query: 과목별 기말 성적의 평균을 검색하라.

select cno, avg(final) as '기말평균'

from enrol

group by cno;

# group by는 논리적으로 from 절에 있는 테이블을 group by절에 명시된 열의 값에 따라 그룹으로 분할한다. 물론 그렇다고 테이블이 데이타베이스내에서 물리적으로 분할되는 것은 아니다.

위의 예에서는 등록(enrol) 테이블을 5개의 그룹(C123, E123, ...)으로 분할하여 각 그룹별로 select 문을 실행한다. 이와 같이 하나의 테이블을 접근하여 몇 개의 그룹으로 만들 수 있으나 group by 자체는 어떤 순서를 명시하지는 않는다.

따라서 과목별 순서를 명시하려면 order by cno절을 group by절 다음에 첨가하면 된다.


having 을 사용한 검색

query: 세 사람 이상 등록한 과목의 기말 평균 성적을 검색하라.

select cno, avg(final) as 평균

from enrol

group by cno

having count(*) >= 3;

# having은 각 그룹의 구성 요건을 명시한다. 만일 group by절이 생략되면 테이블 전체를 하나의 그룹으로 취급한다.


부속 질의문(sub query)을 사용한 검색

query: 과목 번호(cno) 'C413'에 등록한 학생의 이름(name)을 검색하라.

select name

from student

where sno in

(select sno

from enrol

where cno = 'C413');

# 부속 질의문은 다른 질의문에 중첩되어 사용된 검색문으로서 select-from-where-group by-having의 형태를 취한다. 위의 예에서 부속 질의문은 in 다음에 사용되었는데 이때 부속 질의문은 검색 결과로 학번값의 집합 {100, 300, 400} 을 생성하고 in은 집합의 멤버십 연산자로 해석할 수 있다. 

그러므로 위의 질의문은 다음과 같은 질의문의 뜻이 된다.

select name

from studnet

where sno in (100, 300, 400);

또한 위 원래의 질의문은 조인을 사용하는 질의문으로 표현할 수 있다. 

select student.sname

from studnet, enrol

where student.sno = enrol.sno

and enrol.cno = 'C413';

이 원래 질의에 대한 이 두 가지 형색의 질의문은 모두 맞다. .이것은 하나의 질의에 대한 표현 형식이 여러 가지 있을 수 있다는 것을 뜻한다. 다만 어느 형식을 쓰느냐 하는 것은 사용자의 기호에 달려 있다. 


query: 과목번호 'C413'에 등록하지 않은 학생의 이름을 검색하라.

select name

from student

where sno not in 

{select sno

from enrol

where cno = 'C413');

# 부속 질의문은 in 이외의 경우에도 사용할 수 있다. 


query: 학생 김 연아와 같은 학과에 속하는 학생의 이름과 학과를 검색하라.

select name, dept

from student

where dept = 

(select dept

from student

where name = '김 연아');


like를 사용하는 검색

query: 과목번호(cno)가 c로 시작되는 과목의 번호와 과목이름(cname)을 검색하라.

select cno, cname

from course

where cno like 'c%';

# like 프레디킷은 열 이름과 함께 스트링 상수를 명세한 검색 조건이다.

이 예에서 사용된 '%' 는 c로 시작하기만 하면 어떤 길이의 어떤 문자 스트링도 관계없다는 뜻이다. 

만일 sname like s'__'  라 하면 s로 시작되는 세 문자를 말하고, sname like '%s__' 라 하면 스트링 끝에서 세 번째가 s인 문자열을 한다. 또 단순히 sname like '%s%' 라 하면 s가 포함된 문자열을 말한다.


NULL을 사용한 검색

학생 테이블에 학번이 600, 이름이 김 연아, 학과가 NULL인 튜플이 있다고 가정한다.

query: 학과(dept)가 NULL인 학생의 학번과 이름을 검색하라.

select sno, snmae

from student

where dept is NULL

# 일반적으로 NULL을 검색 조건속에 명시할 때는 '열_이름 is [not] NULL' 의 형식만 허용된다. 

열_이름 = NULL의 형식은 불법적인 것으로 허용되지 않는다. 또한 널값은 조건식을 실행할 때 어떤 다른 값과 비교하면 어떤 비교 연산자이든지간에 거짓으로 된다. 


exists를 사용하는 검색

query: 과목 'C413'에 등록한 학생의 이름을 검색하라.

select name

from student

where exists

(select *

from enrol

where sno = student.sno

and cno = 'C413');

# exists는 존재 정량자(existential quantifier)로서 exists 다음에 나오는 검색문의 실행 결과 검색된 튜플이 존재하는가를 검사한다. 따라서 이 부속 질의문은 exists(select * from) 검색문을 실행한 뒤 그 결과가 공집합이 아니면 참이고, 공집합이면 거짓으로 판정한다.

위의 예에서는 각 학생이름에 대한 학번을 검색한 뒤 그 학번에 연관된 등록(enrol) 테이블에 exists 검색문을 수행해서 참일 때 그 학생이름을 결과에 속하도록 한다. 따라서, 이 질의문은 사실상 '학생 테이블에서 학생이름을 검색하는데 어떤 학생이냐 하면 과목 'C413'에 등록하여 등록(enrol) 테이블에 튜플이 존재하는 그런 학생이다.' 라는 뜻이 된다.


query: 과목 'C413'에 등록하지 않은 학생의 이름을 검색하라.

select name

from student

where not exists

(select *

from enrol

where sno = student.sno

and cno = 'C413');


union 이 관련된 검색

query: 3학년이거나 또는 과목 'C324'에 등로한 학생의 학번을 검색하라.

select sno

from student

where year = 3

union

select sno

from enrol

where cno = 'C324';

# union은 일반 집합론의 합집합과 같다. 따라서 union이 사용되면 결과 테이블에서 중복되는 튜플은 제거된다.


'Programming > DataBase' 카테고리의 다른 글

keywork BETWEEN, IN  (0) 2016.08.15
Basic  (0) 2016.07.31
SQL 데이터 조작문 - 데이터 삽입  (0) 2014.09.08
SQL 데이터 조작문 - 데이터 갱신  (0) 2014.09.08
데이터베이스의 개요  (0) 2014.09.07
Posted by scii
:


데이터베이스의 구성 요소

데이터베이스의 구성 요소에는 테이블, 레코드, 필드 이렇게 3가지가 있다. 

이  름 

학  번 

수강과목 

김연아 

200014005 

Houdini

손나은 

200017055 

C++ 


테이블

- 표 자체를 말함.

테이블은 필드들과 레코드들로 구성된 구성 요소인데 하나의 데이터베이스 테이블 내에 필드들과 레코드들이 존재하게 되는 것이다.

필드

- 이름, 학번, 수강과목을 나타내는 각각의 열(Column)을 '필드'라 부른다.

레코드

- 각 필드에 해당되는 첫 번째 사람의 데이터는 '김연아', '200014005', 'Houdini' 인데 하나의 행(Row)에 해당되는 데이터를 레코드라 한다.

즉, 레코드란 한 사람, 한 사람 분의 데이터를 의미한다. 


데이터베이스 관리 시스템(DBMS)

데이터베이스에 모아 놓은 데이터들의 저장, 읽기, 검색 등의 처리를 위해서는 전용 프로그램이 필요하게 되는데 이것을 데이터베이스 관리 시스템 즉, DBMS(Database Management System)라고 부른다.

DBMS는 사용자의 응용 프로그램과 데이터들의 저장소인 데이터베이스와의 연결을 도와주는 프로그램으로 생각하면 된다.

데이터베이스 프로그램인 MariaDB도 DBMS의 일종인데 이것 외에도 MSSLQ, Oracle, Infomix  등 많은 DBMS가 있다. MariaDB(MySQL) 을 사용하기 위해서는 데이터베이스 전용 컴퓨터 언어가 필요한데 이를 SQL(Structured Query Language) 이라고 한다.

SQL은 데이터를 정의하고 조작, 제어할 수 있는 테이블 형태로 데이터를 저장하는 것을 관계형 데이터베이스라고 하는데, 관계형 데이터베이스에서 데이터를 조작, 관리하는데 필요한 언어가 바로 SQL이다.


MariaDB(MySQL) 의 특징

- MariaDB는 공개 소프트웨어이므로 누구나 무료로 다운로드 받아 사용할 수 있다. 그러나 상업적인 목적으로 MariaDB를 사용하려면 라이센스를 별도로 구매하여 사용하여야 한다.

- MariaDB는 DBMS 중에서 처리 속도가 상당히 빠르다.

- MariaDB는 설치가 쉽고 사용하기 쉽기 때문에 초보자라도 빠른 시일 내에 사용법을 익힐 수 있다.

- MariaDB는 대용량의 데이터를 처리할 수 있으며, 데이터 용량이 아무리 커도 손쉽게 처리할 수 있다.

- 보안성이 뛰어나다.


설치법

http://saelly.tistory.com/552


'Programming > DataBase' 카테고리의 다른 글

keywork BETWEEN, IN  (0) 2016.08.15
Basic  (0) 2016.07.31
SQL 데이터 조작문 - 데이터 삽입  (0) 2014.09.08
SQL 데이터 조작문 - 데이터 갱신  (0) 2014.09.08
SQL 데이터 조작문 - 데이터 검색  (0) 2014.09.07
Posted by scii
:


파일/디렉토리 관련 함수. 

 파일명

역할 

 copy() 

 파일 복사

mkdir() 

디렉토리 생성 

chdir() 

디렉토리 경로 변경 

fopen() 

파일 열기 

fread() 

파일 읽기 

fwrite() 

파일 쓰기 


MySQL 데이터베이스 관련 함수. 

 파일명

역할 

mysql_connect() 

 데이터베이스 연결

mysql_create_db() 

데이터베이스 생성 

mysql_drop_db() 

데이터베이스 삭제 

mysql_close() 

데이터베이스 접속끊기  



'Programming > PHP' 카테고리의 다른 글

echo 문 사용 시, 중괄호( { } ) 의 대한 의미  (0) 2014.09.07
점(.) 연산자  (0) 2014.09.07
PHP 와 HTML과의 관계  (1) 2014.08.11
PHP 기반의 서버/클라이언트 환경  (0) 2014.08.11
Posted by scii
: