728x90
반응형

Database 48

MySQL 데이터베이스의 이름을 손쉽게 바꾸는 방법

질문 : MySQL 데이터베이스의 이름을 빠르게 바꾸려면 어떻게합니까 (스키마 이름 변경) 에서 MySQL의 매뉴얼 MySQL은 이를 다루고 있습니다. 일반적으로 데이터베이스를 덤프하고 새 이름으로 다시 가져옵니다. 이것은 매우 큰 데이터베이스에 대한 옵션이 아닙니다. RENAME {DATABASE | SCHEMA} db_name TO new_db_name; 나쁜 일을하고 소수의 버전에만 존재하며 전반적으로 나쁜 생각입니다 . 이것은 MyISAM 과는 매우 다른 것을 저장 하는 InnoDB 와 함께 작동해야합니다. 답변 InnoDB 의 경우 다음이 작동하는 것 같습니다. 새 빈 데이터베이스를 만든 다음 각 테이블의 이름을 차례로 새 데이터베이스로 바꿉니다. RENAME TABLE old_db.table ..

지정된 이름의 열을 포함하는 모든 테이블 찾기-MS SQL Server

질문 : 지정된 이름의 열을 포함하는 모든 테이블 찾기-MS SQL Server 열을 포함하는 테이블 이름을 쿼리 할 수 있습니까? LIKE '%myName%' 답변 검색 테이블 : SELECT c.name AS 'ColumnName' ,t.name AS 'TableName' FROM sys.columns c JOIN sys.tables t ON c.object_id = t.object_id WHERE c.name LIKE '%MyName%' ORDER BY TableName ,ColumnName; 테이블 및보기 검색 : SELECT COLUMN_NAME AS 'ColumnName' ,TABLE_NAME AS 'TableName' FROM INFORMATION_SCHEMA.COLUMNS WHERE COL..

SQL은 열에 최대 값이있는 행만 선택합니다

질문 : SQL은 열에 최대 값이있는 행만 선택합니다 [중복] 문서 용 테이블이 있습니다 (여기에 단순화 된 버전). +------+-------+--------------------------------------+ | id | rev | content | +------+-------+--------------------------------------+ | 1 | 1 | ... | | 2 | 1 | ... | | 1 | 2 | ... | | 1 | 3 | ... | +------+-------+--------------------------------------+ ID 당 하나의 행과 가장 큰 수익 만 선택하려면 어떻게해야합니까? 위의 데이터를 사용하면 결과에 [1, 3, ...] 및 [2, 1, ...

데이터베이스 필드의 표준 길이 목록

질문 : 데이터베이스 필드의 표준 길이 목록 저는 데이터베이스 테이블을 디자인하고 있으며 다시 한 번 같은 어리석은 질문을 합니다. 이름 필드는 얼마나 길어야합니까? 이름, 성, 이메일 주소와 같은 가장 일반적인 필드에 대한 합리적인 길이의 목록이있는 사람이 있습니까? 답변 W3C의 권장 사항 : 다양한 배경을 가진 사람들의 이름을 받아들이는 양식이나 데이터베이스를 디자인하는 경우 이름과성에 대해 별도의 필드가 필요한지 자문해야합니다. … 일부 문화권의 이름은 자신의 이름보다 훨씬 길 수 있음을 명심하십시오. … 데이터베이스의 이름에 대한 필드 크기를 제한하지 마십시오 . 특히 UTF-8의 4 자 일본어 이름이 4 바이트에 맞을 것이라고 가정하지 마십시오. 실제로 12자가 필요할 것입니다. https:/..

MySQL에서 AUTO_INCREMENT를 재설정하는 방법

질문 : MySQL에서 AUTO_INCREMENT를 재설정하는 방법은 무엇입니까? 필드의 AUTO_INCREMENT 를 어떻게 재설정 할 수 있습니까? 다시 1 부터 세기를 시작하고 싶습니다. 답변 다음을 사용하여 카운터를 재설정 할 수 있습니다. ALTER TABLE tablename AUTO_INCREMENT = 1 InnoDB의 경우 auto_increment 값을 현재 가장 높은 인덱스보다 낮거나 같게 설정할 수 없습니다. ( ViralPatel의 인용문) : 카운터를 이미 사용 된 값보다 작거나 같은 값으로 재설정 할 수 없습니다. MyISAM의 경우 값이 현재 AUTO_INCREMENT 열에있는 최대 값보다 작거나 같으면 값은 현재 최대 값에 1을 더한 값으로 재설정됩니다. InnoDB의 경우..

PostgreSQL : PostgreSQL에서 테이블 표시

질문 : PostgreSQL : PostgreSQL에서 테이블 표시PostgreSQL에서 MySQL의 show tables 을 표시하는 것과 동일한 것은 무엇입니까?답변psql 명령 줄 인터페이스에서먼저 데이터베이스를 선택하십시오.\c database_name 그러면 현재 스키마의 모든 테이블이 표시됩니다.\dt 프로그래밍 방식으로 (또는 psql 인터페이스에서도) :SELECT * FROM pg_catalog.pg_tables; 시스템 테이블은 pg_catalog 데이터베이스에 있습니다.출처 : https://stackoverflow.com/questions/769683/postgresql-show-tables-in-postgresql

데이터베이스에 암호를 저장하는 가장 좋은 방법

질문 : 데이터베이스에 암호를 저장하는 가장 좋은 방법 인증 (사용자 이름 및 비밀번호)이 필요한 프로젝트를 진행 중입니다.또한 데이터베이스에 연결되므로 사용자 이름과 비밀번호를 거기에 저장할 것이라고 생각했습니다. 그러나 데이터베이스에있는 테이블의 텍스트 필드처럼 암호를 갖는 것은 좋은 생각이 아닌 것 같습니다.C #을 사용하고 있으며 2008 Express 서버에 연결하고 있습니다. 누구든지 이러한 유형의 데이터를 저장하는 가장 좋은 방법이 무엇인지 (가능한 한 많은 예제와 함께) 제안 할 수 있습니까?추신 : 좋은 이유를 제공 할 수 있다면이 정보가 데이터베이스에 저장되지 않는다는 생각에 열려 있습니다. 답변 일반 텍스트 필드에 암호를 저장하는 것은 끔찍한 생각이라는 것이 맞습니다. 그러나 위치에 ..

PostgreSQL에서 데이터베이스 복사본 생성

질문 : PostgreSQL에서 데이터베이스 복사본 생성전체 데이터베이스 (구조 및 데이터)를 pgAdmin의 새 데이터베이스에 복사하는 올바른 방법은 무엇입니까?답변Postgres를 사용하면 새 데이터베이스를 만들 때 서버의 기존 데이터베이스를 템플릿으로 사용할 수 있습니다. pgAdmin이 데이터베이스 생성 대화 상자에서 옵션을 제공하는지 확실하지 않지만 그렇지 않은 경우 쿼리 창에서 다음을 실행할 수 있어야합니다.CREATE DATABASE newdb WITH TEMPLATE originaldb OWNER dbuser; 그래도 다음을 얻을 수 있습니다.ERROR: source database "originaldb" is being accessed by other users 데이터베이스에서 다른 모든..

데이터베이스, 테이블 및 열 명명 규칙?

질문 : 데이터베이스, 테이블 및 열 명명 규칙? 데이터베이스를 디자인 할 때마다 데이터베이스에 항목 이름을 지정하는 가장 좋은 방법이 있는지 항상 궁금합니다. 나는 자주 다음과 같은 질문을합니다. 데이터베이스의 항목 이름 지정에 대한 권장 지침이 있습니까? 답변 Microsoft의 SQL Server 샘플 데이터베이스를 확인하는 것이 좋습니다. https://github.com/Microsoft/sql-server-samples/releases/tag/adventureworks AdventureWorks 샘플은 데이터베이스 개체 구성에 스키마 이름을 사용하는 매우 명확하고 일관된 명명 규칙을 사용합니다. 출처 : https://stackoverflow.com/questions/7662/database-..

ATTACH로 열린 SQLite 데이터베이스 파일의 테이블을 나열하는 방법

질문 : ATTACH로 열린 SQLite 데이터베이스 파일의 테이블을 나열하는 방법은 무엇입니까? SQLite 데이터베이스 파일에서 테이블 및 해당 테이블 내의 행을 나열하는 데 사용할 수있는 SQL 은 무엇입니까 ? SQLite 3 명령 줄 도구 ATTACH 명령을 사용하여 연결하면? 답변 .tables 및 .schema "helper"함수는 ATTACH 된 데이터베이스를 조사하지 않고 "main"데이터베이스에 대해 SQLITE_MASTER 결과적으로 ATTACH some_file.db AS my_db; 그럼 당신은해야 SELECT name FROM my_db.sqlite_master WHERE type='table'; .tables 와 함께 표시되지 않습니다 sqlite_temp_master 위해 s..

SQL Server의 기존 테이블에 기본값이있는 열 추가

질문 : SQL Server의 기존 테이블에 기본값이있는 열 추가SQL Server 2000 / SQL Server 2005 의 기존 테이블에 기본값이있는 열을 어떻게 추가 할 수 있습니까?답변ALTER TABLE {TABLENAME} ADD {COLUMNNAME} {TYPE} {NULL|NOT NULL} CONSTRAINT {CONSTRAINT_NAME} DEFAULT {DEFAULT_VALUE} WITH VALUES ALTER TABLE SomeTable ADD SomeCol Bit NULL --Or NOT NULL. CONSTRAINT D_SomeTable_SomeCol --When Omitted a Default-Constraint Name is autogenerated. DEFAULT (0)--..

MySQL에서 새 사용자를 만들고 하나의 데이터베이스에 대한 전체 액세스 권한을 부여합니다.

질문 : MySQL에서 새 사용자를 만들고 하나의 데이터베이스에 대한 전체 액세스 권한을 부여합니다.내가 MySQL의에서 새 사용자를 생성하고 하나의 데이터베이스에에게 모든 권한을 부여 할 말 dbTest 나는 같은 명령으로 만들 것을 create database dbTest; . 이를 수행하는 MySQL 명령은 무엇입니까?답변사용자를 생성하려면 다음을 시도하십시오.CREATE USER 'user'@'hostname'; dbTest 데이터베이스에 대한 액세스 권한을 부여하려면 이것을 시도하십시오.GRANT ALL PRIVILEGES ON dbTest.* To 'user'@'hostname' IDENTIFIED BY 'password'; 동일한 시스템에서 MySQL에 액세스하는 코드 / 사이트를 실행하는 ..

mysql 데이터베이스의 크기를 얻는 방법

질문 : mysql 데이터베이스의 크기를 얻는 방법은 무엇입니까? mysql 데이터베이스의 크기를 얻는 방법은 무엇입니까? 대상 데이터베이스가 "v3"이라고 가정합니다. 답변 이 쿼리를 실행하면 원하는 정보를 얻을 수 있습니다. SELECT table_schema "DB Name", ROUND(SUM(data_length + index_length) / 1024 / 1024, 1) "DB Size in MB" FROM information_schema.tables GROUP BY table_schema; 이 쿼리는 더 포괄적 인 지침이 제공되는 mysql 포럼에서 제공됩니다. 출처 : https://stackoverflow.com/questions/1733507/how-to-get-size-of-mysq..

mysqldump를 사용하지 않고 데이터베이스 복사 / 복제

질문 : mysqldump를 사용하지 않고 데이터베이스 복사 / 복제mysqldump 를 사용하지 않고 MySQL db (콘텐츠 포함 및 콘텐츠 제외)를 다른 데이터베이스로 복제 / 복제 할 수있는 방법이 있습니까?현재 MySQL 4.0을 사용하고 있습니다.답변mysqldump 를 사용하고 싶지 않다고 말한 것을 볼 수 있지만 비슷한 솔루션을 찾는 동안이 페이지에 도달했으며 다른 사람들도 찾을 수 있습니다. 이를 염두에두고 Windows 서버의 명령 줄에서 데이터베이스를 복제하는 간단한 방법은 다음과 같습니다.mysqldump -h [server] -u [user] -p[password] db1 | mysql -h [server] -u [user] -p[password] db2-p 와 [password]..

MongoDB 데이터베이스의 모든 항목 삭제

질문 : MongoDB 데이터베이스의 모든 항목 삭제MongoDB에서 개발 중입니다. 완전히 악의적이지 않은 목적을 위해 데이터베이스의 모든 것을 날려 버리고 싶을 때가 있습니다. 즉, 모든 단일 컬렉션을 삭제하고 주변에있는 모든 것을 삭제하고 처음부터 시작합니다. 이 작업을 수행 할 수있는 한 줄의 코드가 있습니까? MongoDB 콘솔 메서드와 MongoDB Ruby 드라이버 메서드를 모두 제공하면 보너스 포인트를 얻을 수 있습니다.답변몽고 셸에서 :use [database]; db.dropDatabase(); 그리고 사용자를 제거하려면 :db.dropAllUsers(); 출처 : https://stackoverflow.com/questions/3366397/delete-everything-in-a-m..

PostgreSQL 데이터베이스를 다른 서버로 복사

질문 : PostgreSQL 데이터베이스를 다른 서버로 복사프로덕션 PostgreSQL 데이터베이스를 개발 서버에 복사하려고합니다. 이 작업을 수행하는 가장 빠르고 쉬운 방법은 무엇입니까?답변중간 파일을 만들 필요가 없습니다. 넌 할 수있어pg_dump -C -h localhost -U localuser dbname | psql -h remotehost -U remoteuser dbname 또는pg_dump -C -h remotehost -U remoteuser dbname | psql -h localhost -U localuser dbname psql 또는 pg_dump 를 사용하여 원격 호스트에 연결합니다.데이터베이스가 크거나 연결 속도가 느린 경우 파일을 덤프하고 압축 된 파일을 전송하는 것이 더 ..

SQL Server DateTime 데이터 형식에서 날짜 만 반환하는 방법

질문 : SQL Server DateTime 데이터 형식에서 날짜 만 반환하는 방법SELECT GETDATE() 반환 : 2008-09-22 15:24:13.790시간 부분없이 날짜 부분을 원합니다 : 2008-09-22 00:00:00.000어떻게 얻을 수 있습니까?답변SQL Server 2008 이상에서는 다음 CONVERT 해야합니다.SELECT CONVERT(date, getdate()) 이전 버전에서는 다음을 수행 할 수 있습니다.SELECT DATEADD(dd, 0, DATEDIFF(dd, 0, @your_date)) 예를 들면SELECT DATEADD(dd, 0, DATEDIFF(dd, 0, GETDATE())) 나에게 준다2008-09-22 00:00:00.000 장점 :varchar da..

PostgreSQL의 "use database_name"명령

질문 : PostgreSQL의 "use database_name"명령 저는 PostgreSQL 초보자입니다. MySQL 또는 MS SQL Server USE 명령과 같은 Postgres의 쿼리 편집기에서 다른 데이터베이스에 연결하고 싶습니다. 인터넷을 검색하여 \c databasename 을 찾았지만 psql 에서만 실행됩니다. PostgreSQL 쿼리 편집기에서 시도하면 구문 오류가 발생합니다. pgscripting으로 데이터베이스를 변경해야합니다. 누구든지 그것을하는 방법을 알고 있습니까? 답변 PostgreSQL 대한 연결은 항상 특정 데이터베이스에 연결됩니다. 다른 데이터베이스에 액세스하려면 새 연결을 얻어야합니다. \c 를 사용하면 지정된 데이터베이스 및 / 또는 자격 증명을 사용하여 이전 연결..

SQL-Server : 백업 세트는 기존 데이터베이스 이외의 데이터베이스 백업을 보유합니다.

질문 : SQL-Server : 백업 세트는 기존 데이터베이스 이외의 데이터베이스 백업을 보유합니다. 내 데이터베이스에 대한 SQL Server 백업 파일을 복원하려고하는데 다음과 같은 오류가 발생합니다. 백업 세트는 기존 데이터베이스 이외의 데이터베이스 백업을 보유합니다. SQL Server 2008의 데이터베이스와 백업 파일은 2005 년입니다. 무엇이 문제일까요? 답변 저도 이 문제를 접했습니다. 해결책 : 빈 데이터베이스를 만들고 .bak 파일을 복원하지 마십시오. SQL Server Management Studio의 "데이터베이스"분기를 마우스 오른쪽 단추로 클릭하여 액세스 할 수있는 '데이터베이스 복원' 옵션을 사용하고 복원 할 원본을 제공하면서 데이터베이스 이름을 제공합니다. 또한 다른 데이..

“INNER JOIN”과“OUTER JOIN”의 차이점

질문 : “INNER JOIN”과“OUTER JOIN”의 차이점은 무엇입니까? 또한 LEFT JOIN , RIGHT JOIN 및 FULL JOIN 이 어떻게 맞습니까? 답변 중복이없는 열에 결합한다고 가정하면 매우 일반적인 경우입니다. A와 B의 내부 결합은 A가 B를 교차하는 결과, 즉 벤 다이어그램 교차의 내부 부분을 제공합니다. A와 B의 외부 결합은 A 결합 B의 결과, 즉 벤 다이어그램 결합의 외부 부분을 제공합니다. 예 각각 하나의 열이있는 두 개의 테이블과 다음과 같은 데이터가 있다고 가정합니다. A B - - 1 3 2 4 3 5 4 6 (1,2)는 A에 고유하고 (3,4)는 일반적이며 (5,6)은 B에 고유합니다. Inner join 동등한 쿼리 중 하나를 사용하는 내부 조인은 두 테이블..

JavaScript에서 모든 문자열을 바꾸는 방법

질문 : JavaScript에서 모든 문자열을 바꾸는 방법내 JavaScript 코드에이 문자열이 있습니다."Test abc test test abc test test test abc test test abc" 하기:str = str.replace('abc', ''); 위의 문자열에서 abc 의 첫 번째 항목 만 제거하는 것 같습니다.모든 항목을 어떻게 바꿀 수 있습니까?답변업데이트 : 가장 많이 사용되는 브라우저의 최신 버전에서 다음과 같이 replaceAlllet result = "1 abc 2 abc 3".replaceAll("abc", "xyz"); // `result` is "1 xyz 2 xyz 3" 하지만 대상 브라우저가 먼저 지원을 추가했는지 확인하려면 먼저 또는 다른 호환성 표를 사용할 ..

GUID / UUID를 만드는 방법

질문 : GUID / UUID를 만드는 방법JavaScript에서 전역 적으로 고유 한 식별자를 만들려고합니다. 모든 브라우저에서 어떤 루틴을 사용할 수 있는지, 내장 난수 생성기를 "무작위"하고 시드했는지 등을 잘 모르겠습니다.GUID / UUID는 32 자 이상이어야하며 ASCII 범위에 있어야 전달시 문제가 발생하지 않습니다.답변RFC 4122 에 따르면 GUID (Globally Unique IDentifier)라고도하는 UUID (Universally Unique IDentifier)는 특정 고유성 보장을 제공하도록 설계된 식별자입니다.몇 줄의 JavaScript 코드에서 RFC 호환 UUID를 구현할 수 있지만 (예 : 아래 @broofa의 답변 참조) 몇 가지 일반적인 함정이 있습니다.잘못된..

728x90
반응형