본문 바로가기

Programming/Database14

[Influx DB] .bat 파일로 정기적으로 DB 백업(+ 복원) Influx DB를 docker로 사용 중인데 가끔 에러 때문에 계속 restart 되는 문제가 있었다.이럴 때마다 DB를 초기화해야 해서 백업 기능이 있는지 확인해 봤다.Enterprise 버전에는 UI에서 정기 백업하기 위한 기능을 설정할 수 있나 보다.https://community.influxdata.com/t/how-to-scheduled-a-backup-of-a-database-in-influxdb-windows/28913 How to scheduled a backup of a database in InfluxDB Windows?Hello I use InfluxDB on Windows. I was wondering if it is possible to scheduled a database ba.. 2024. 11. 23.
[Oracle DB] VARCHAR2 vs VARCHAR 차이 VARCHAR2와 VARCHAR data type은 같다.그리고 공식 문서에서는 VARCHAR2 사용을 권장한다.The VARCHAR datatype is synonymous with the VARCHAR2 datatype. To avoid possible changes in behavior, always use the VARCHAR2 datatype to store variable-length character strings.https://docs.oracle.com/cd/B28359_01/server.111/b28318/datatype.htm#i1835 Oracle Data Types33/35 26 Oracle Data Types This chapter discusses the Oracle built.. 2024. 11. 21.
[Oracle DB] BLOB이 차지하는 저장 공간 용량 조회 Oracle에서 BLOB이 차지하는 저장 공간 용량을 다음과 같이 조회할 수 있다.SELECT segment_name, segment_type, SUM(bytes) / (1024 * 1024) AS size_in_mbFROM dba_segmentsWHERE segment_name IN ( SELECT segment_name FROM dba_lobs WHERE table_name = '{table_name}' AND owner = '{schema}' ) OR (segment_name = '{table_name}' AND owner = '{schema}')GROUP BY segment_name, .. 2024. 11. 19.
[SQL] WHERE 절 조건에 IF/ELSE 조건 넣기 누군가 물어봤다. "WHERE 절에 IF/ELSE 조건을 넣으려면 어떻게 해?" 처음에는 T-SQL의 IF, ELSE를 말하는 줄 알았는데 어떤 조건이 TRUE 일 때는 조건 1을 적용하고, FALSE 일 때는 조건 2를 적용하고 싶다는 것이었다. SELECT * FROM #TEMP_TABLE WHERE ( Condition = TRUE -- IF AND ColumnA = 'A' -- 조건1 ) OR ( Condition = FALSE -- ELSE AND ColumnB = 'B' -- 조건2 ) 대충 표현하면 아래 조건이 적용된 결과가 조회된다. if (Condition == TRUE) { ColumnA == 'A' } else { ColumnB == 'B' } 기본적인 질문이었는데 몇 분간 뇌정지를 .. 2022. 11. 2.
[MS-SQL] Alter Constraint 있을 법하다고 생각했는데 ALTER CONSTRAINT는 없다. DROP CONSTRAINT 후 ADD CONSTRAINT으로 해결한다. ALTER TABLE MY_TABLE DROP CONSTRAINT CHK_Column1; ALTER TABLE MY_TABLE ADD CONSTRAINT CHK_Column1 CHECK (Column1 BETWEEN 1 AND 10); 2022. 7. 10.
[MS-SQL] SQL로 파일 이동/삭제하기(xp_cmdshell) 놀랍게도 SQL로 파일을 이동/삭제할 수 있는 방법이 있었다. xp_cmdshell 을 사용해서 윈도우 command를 활용하는 방법이다. 윈도우 CMD 명령어 모음 먼저 아래 쿼리를 실행해서 xp_cmdshell 사용을 설정해야 한다. EXEC sp_configure 'show advanced options', '1' RECONFIGURE EXEC sp_configure 'xp_cmdshell', '1' RECONFIGURE 그리고 아래와 같이 사용하면 된다. DECLARE @cmd sysname; -- 파일 삭제 SET @cmd = 'del "' + @RootDir + '\' + @FileName + '"'; EXECUTE sys.xp_cmdshell @cmd; -- 파일 이동하기(@RootDir1 .. 2022. 3. 6.
[MS-SQL] JSON Parsing하기 DB에 저장된 JSON string을 다루는 밥법에 대한 Documentation -- JSON_VALUE를 사용하면 원하는 value를 가져올 수 있다. SELECT JSON_VALUE('{"columns": [{ "name": "1" },{ "name": "2" }]}', '$.columns[1].name'); -- JSON_MODIFY로 수정을 할 수 있다. -- append를 사용하면 원하는 value를 추가할 수도 있다!🤗 SELECT JSON_MODIFY('{"columns": [{ "name": "1" },{ "name": "2" }]}', 'append $.columns', JSON_QUERY('{"name": "3" }')); 다음과 같이 결과를 확인할 수 있다. PostgreSQL 14.. 2021. 11. 11.
[MS-SQL] 대소문자 구별해서 치환하기 REPLACE() 사용 시 Case-sensitive 하게 Replace 하기 위해서 COLLATE SQL_Latin1_General_CP1_CS_AS 를 사용하면 된다. SELECT REPLACE('NULL and null' COLLATE SQL_Latin1_General_CP1_CS_AS, 'NULL', ''); NULL 과 null 중에 대문자 NULL 만 replace 된 것을 확인할 수 있다. 2021. 11. 6.
[MS-SQL] 모든 테이블 조회 MS SQL Server에서 모든 테이블을 조회하는 쿼리는 다음과 같다. SELECT SCHEMA_NAME(t.schema_id) AS 'Schema', t.name AS 'TableName', c.name AS 'ColumnName' FROM sys.columns c JOIN sys.tables t ON c.object_id = t.object_id WHERE c.name LIKE '%Early%' ORDER BY TableName, ColumnName; 2021. 9. 26.