ip 주소를 sql에서 다루어야 할 일이 있습니다. 오늘은, ip address를 unsigned integer로 바꾸는 함수와 unsigned integer를 다시 ip addr로 바꾸는 함수를 알아보도록 하겠습니다. 당연하게도, ipv4인 경우이고요. ipv6인 경우는 따로 있습니다. inet_aton과 inet_ntoa는 크게 어렵지 않습니다. 단순하게 해석해 봅시다. a는 Address의 약자일 겁니다. 그리고 n은 Number일 거고요. 중간에 to는 AtoB할 때 그 to가 맞습니다. 즉, A에서 N으로 변환하는 함수가 aton이고, N에서 A로 변환하는 함수가 ntoa인 셈입니다. ipv4 시스템에서, 255.255.255.255까지 나올 수 있습니다. 이 값을 numeric address로..
코딩 검색 결과
이번 시간에는 결과를 합집합 하는 sql의 union 연산자에 대해 알아보겠습니다. select 1 As temp를 하면 어떤 값이 나올까요? 1이 나옵니다. 네. 저는 단지 1이라는 값을 선택할 뿐입니다. 그러면, select 2 As temp는 무엇을 의미하나요? 2라는 값을 선택합니다. 이 둘을 union 하면 무엇이 될까요? 아래 쿼리를 작성해 보겠습니다. union 앞 뒤로 괄호로 묶여져 있다는 것을 주목해 보겠습니다. A union B로 묶였다고 했을 때, A는 1을 선택하는 것이였고, B는 2를 선택하는 것이였습니다. 1이라는 결과와 2라는 결과를 union 하면 1과 2가 나올 겁니다. 결과값을 보겠습니다. 1과 2가 나오는군요. 그러면 이런 식으로 작성해도 될까요? union 앞에는 1을..
자바에는 instanceof 연산자가 있습니다. 무엇일까요? String 클래스의 equals 메서드를 보겠습니다. anObject는 Object 객체를 참조하는 변수입니다. 980번째 줄을 보면, anObject instanceOf String 이라고 되어 있습니다. anObject가 String 인스턴스인지 확인하겠다는 것입니다. 그런데 왜 하필? 일단, 우리는 anObject가 Object 참조형이라는 것을 볼 필요가 있는데요. Object는 최상위 루트 부모입니다. 그러면, String도 Object를 상속받은 거고, MyObj1도 Object를 상속받은 것이라고 할 수 있어요. 그러면 String은 Object라고 할 수 있나요? 네 맞습니다. 그러면 반대로, Object 인스턴스는 String..
jdbc 프로그래밍을 하시다 보면, PreparedStatement랑 statement는 많이 들어보셨으리라 생각이 듭니다. 이 중 전자를 '준비된 구문' 이라고 이야기를 하는데요. 이 둘에 대해서 간단하게 알아보겠습니다. 예제 프로그램 1을 보겠습니다. 그 전에 테이블 t의 필드 a와 b는 varchar형입니다. 필드 최대 길이는 20으로 잡았습니다. 딱히 어려운 것은 없고, Statement라는 것이 있고, 이것은 SQL을 집어넣습니다. 그런데, SQL은 where a' 라는 문자열과 str과 '가 있는 문자열을 연결하고 있어요. str은 어디서 들어올까요? main에서 입력을 받습니다. 그러면 재미있는 장난 한 번 쳐 보겠습니다. a' or 1 = 1# 이라고 입력해 봅시다. mysql에서 주석은 ..
fwrite는 어떤 일을 하는 함수일까요? block의 데이터를 stream에 쓰는 함수입니다. 함수 원형은 아래와 같습니다. 1번째 인자인 ptr은 쓸 데이터를 의미합니다. void형 포인터인게 눈에 띄는데요. 써야 할 데이터가 moo를 가리키는 포인터인지, student를 가리키는 포인터인지 모르거든요. 2번째 인자인 size는 몇 byte를 쓸 거냐를 나타냅니다. count는 몇 번이나 쓸 지를, 4번째는 파일 포인터를 의미합니다. 예제를 보면서 차근 차근 설명해 보도록 하겠습니다. 프로그램 1을 보겠습니다. 이걸 보기 전에, 1.txt를 먼저 생성해 보겠습니다. 일단 1.txt는 빈 파일입니다. 이는 ls 명령어를 통해서 봐도 알 수 있고, cat 1.txt | wc 명령어를 입력해도 알 수 있습..
최근댓글