다시 시작 Tap to restart 386

Node.js mysql 모듈 query LIKE % 사용시 에러

mysql 모듈 버전: 2.17.1 코드 예 dbPool.getConnection(function (err, conn) { conn.query('SELECT * FROM book WHERE bookname LIKE "%?%"; ', [q], function (err, results) { //SELECT if (conn != null) { conn.release(); }//DB연결 풀 해제 console.log('results:', results); }); }); 위와 같이 작성하면 원하는 결과물이 나오지 않는다. 원인 그 이유는 ? 대신에 문자열이 들어가면서 SQL 문이 아래처럼 되기 때문이다. 만약 q에 "사랑"이라고 넣었다면, SELECT * FROM book WHERE bookname LIKE "%..

You have an error in your SQL syntax; 에러

MariaDB에 데이터를 입력하려고 하는데 에러가 났다. 에러 You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near \'order 원인은? 칼럼, 필드명에 order란 예약어를 썼기 때문이다. 힌트는 use near 다음에 나오는 단어에 있었다. MariaDB Reserved Words: 마리아DB 예약어 MySQL Resverd Words: MySQL 예약어 해결책 칼럼명에 쓴 order를 다른 것으로 바꾸었다.

MySQL 데이터베이스명, 테이블명, 컬럼명은 어떻게 지어야 할까?

database naming conventions라고 검색해 본다. convention은 관습이란 뜻이다. 다른 사람들은 어떻게 이름을 만들어서 쓰고 있을까? dev.mysql.com Write SQL statements in the style of the MySQL Reference Manual SQL keywords and reserved words: uppercase Identifiers (table names, column names, etc.): lowercase (출처: dev.mysql.com) SQL 키워드 예약어는 대문자로 작성 테이블명, 컬럼명 등은 소문자로. SQL Style Guide by Simon Holywell 여기 내용이 좋은 거 같다. (출처: www.sqlstyle.gui..

Q. 애드센스AdSense 사이트 광고 심사 결과 주의, 1.가치 있는 인벤토리: 콘텐츠 없음, 원인과 해결책은 무엇일까요?

너무 서둘러서 심사 요청을 했나 봅니다. 주의를 받았습니다. 글이 20개 좀 넘었을 때 신청했고, 주의를 받기까지 2주 정도는 걸린 거 같네요. 주의: 광고 게재가 준비되지 않은 사이트 주의내용은 아래와 같다. 참고해야 할 자료들 1. 사이트에서 고유 콘텐츠와 우수한 사용자 환경 제공 확인 고유한 콘텐츠를 충분히 제공하기 사용자가 내 사이트를 방문할 수밖에 없고 다시 방문하고 싶게 만드는 콘텐츠를 제공해야 합니다. 고유한 콘텐츠는 사이트에 더 많은 방문자를 유치하기 때문에 콘텐츠를 만들 때는 콘텐츠에서 실질적인 가치를 제공하는지, 유사한 주제를 다루는 다른 사이트와 비교하여 독창적인지 스스로 자문해 보는 것이 중요합니다. (출처: support.google.com/adsense/answer/1001591..

자바스크립트 프로그래밍 스타일, 코딩 컨벤션 조사

W3Schools 설명 (참고: www.w3schools.com/js/js_conventions.asp) 변수명은 낙타표기법 camelCase으로 예) firstName = "John"; 연산자 앞뒤로 한칸 띄우기 예) var x = y + z; 코드 블럭 안에는 2칸 띄우기 예) function sum(a, b) { return a + b; } 모든 구문 끝은 세미콜론; var values = ["Volvo", "Fiat"]; 이름 짓는 방법Naming Conventions 변수와 함수명은 낙타표기법으로. camelCase 전역변수는 대문자로. UPPER CASE 상수도 대문자로. 예) PI Underscores 방식은 주로 SQL 데이터베이스에서 사용 예) date_of_birth camelCase ..

API 설계 사례 조사: Youtube DATA API 예

구글은 API 어떻게 설계했는지 참고하기 위해서 분석해봤다. 잘 모르면 유명 회사 사례를 따라하는 게 안전하고 쉬우니까. Youtube DATA API 예 (출처: developers.google.com/youtube/v3/docs) YouTube DATA API 설명 YouTube Data API를 사용하면 YouTube 웹사이트에서 일반적으로 실행하는 기능을 사용자의 웹사이트 또는 애플리케이션에 통합할 수 있습니다. 아래 목록에서는 API를 사용하여 검색할 수 있는 다양한 유형의 리소스를 확인합니다. API는 이러한 여러 개의 리소스를 삽입하거나 업데이트 또는 삭제하는 메소드도 지원합니다. 참조 가이드에서는 API로 이러한 모든 작업을 수행하는 방법을 설명합니다. 이 가이드는 리소스 유형별로 정리되어..

백엔드 Back-end 2020.10.28

flutter로 iOS 에뮬레이터 실행할 때 ..select a development team in the Runner editor.. 에러, 해결 방법

에러 문구 warning: Capabilities for Signing & Capabilities may not function correctly because its entitlements use a placeholder team ID. To resolve this, select a development team in the Runner editor. (in target 'Runner' from project 'Runner') 원인 XCode에 로그인을 안 해서. 안드로이드는 이런 과정 없는데, 애플은 뭔가 귀찮은 과정들이 꼭 있다. 해결 방법 1. XCode에 로그인 XCode - Preferences - Accounts 에서 Apple IDs 추가할 것. 추가하고 나면 Team Role에 이름(Pe..

Node.js 관련 웹사이트, 블로그 모음

Node.js nodejs.org npmjs.com: Node.js 모듈 찾기 mongoDB: NoSQL expressjs.com: Node.js 웹 프레임워크 Expressjs expressjs.com/kr: Expressjs 한글 안내서 expressjs 보안사례: Expressjs 보안 사례, 방법 안내 Node.js 문서Documentation Google Firebase Quickstarts for Node.js Firebase APIs using the Javascript SDK IDE JetBrains WebStorm 자바스크립트 w3schools.com/js: W3SCHOOLS 자바스크립트 w3schools.com/js ES5: W3SCHOOLS 자바스크립트 ES5 w3schools.com..

flutter로 만들 수 있는 UI 위젯 종류를 확인하기

어디서 쉽게 확인할 수 있을까? gallery.flutter.dev/#/ flutter gallery에서 쉽게 확인할 수 있다. 안드로이드 스타일인 material ui와 애플 아이폰 스타일인 cupertino ui를 제공해준다. 여기서 제공해주는 그밖에 ui 위젯이 필요할 경우에는 flutter 적용을 고민해봐야 한다. 안드로이드 스타일 ui 위젯 목록 아이폰 스타일 ui 위젯 아이폰 위젯의 개수가 안드로이드보다 훨씬 적다. 카드뷰처럼 안드로이드 아이폰 함께 쓸 수 있는 것은 material UI 쪽에 포함되어 있기 때문인 거 같다. 기타 예 실제 어떻게 작동하는지 볼 수 있고 코드도 볼 수 있다. material UI 카드 예

Q. 티스토리 블로그, 포스트 주소를 문자로 바꿔야 하는 이유는? 바꾸는 방법은?

왜 문자로 바꿔야 하죠? 구글의 검색엔진 최적화 기본 가이드를 읽어 보세요. 최적화가 잘 된 웹페이지일수록 검색결과에 더 잘 노출됩니다. 당연하겠죠. 검색엔진 최적화 가이드를 보면 문자 URL을 권장하고 있습니다. 출처: 구글의 검색엔진 최적화 기본 가이드 이 주소가 https://taptorestart.tistory.com/entry/티스토리-블로그-모든-글에-♡-공감-버튼-눌러-주세요라고-적는-법 이 주소보다 나은 거죠. https://taptorestart.tistory.com/41 숫자가 좋은 분은 그냥 숫자로 하셔도 됩니다. 하지만 구글한테 점수를 얻어서, 구글 검색에 더 잘 노출되게 하고 싶다면 문자 주소로 바꾸는 게 좋겠죠. 숫자에서 문자 주소로 바꾼다고 숫자 주소가 접속이 안 되는 거 아니..

flutter 개발 관련 사이트 정리

공식 사이트 flutter.dev: flutter 공식 dart.dev: dart 공식 pub.dev: dart, flutter 팩키지 FlutterFirebase: flutter에서 firebase 사용 방법, 문서 gallery.flutter.dev/#/: flutter 앱 갤러리, 위젯별로 어떻게 작동하는지 어떻게 생겼는지 볼 수 있다. IDE android studio: flutter IDE IntelliJ IDEA: flutter 개발 가능한 IDE 예제 flutter codelabs: 한국어로 설명된 flutter codelabs Google Codelabs: 구글 코드랩스에 flutter 관련 강의 있음 예) Adding AdMob ads to a Flutter app github.com/j..

flutter, Hello World

언제나 처음은 Hello World다. Hello World를 화면에 적기 위한 코드는 아래와 같다. (출처: flutter.dev/docs/development/ui/widgets-intro) import 'package:flutter/material.dart'; void main() { runApp( Center( child: Text( 'Hello, world!', textDirection: TextDirection.ltr, ), ), ); } 결과 클래스를 나누면 아래와 같다. import 'package:flutter/material.dart'; void main() { runApp(MyApp()); } class MyApp extends StatelessWidget { @override Wid..

flutter에서 웹 앱으로 테스트, 웹 앱으로 빌드

웹에서 테스트 웹 개발을 활성화 해줘야 한다. 출처: flutter.dev/docs/get-started/codelab-web flutter SDK를 설치한 폴더로 가서 flutter channel beta flutter upgrade flutter config --enable-web 를 실행해야 한다. 다 하고 나면 실행기기에 웹이 추가된다. 이런 식으로 웹에서 테스트할 수 있다. 웹 앱으로 빌드 웹 앱으로 빌드하고 싶은 경우에도 터미널에서 명령어를 써야 한다. 메뉴 중에는 보이지 않는다. flutter build web flutter 프로젝트 폴더로 가서 위 명령어를 실행하면 web app용으로 build된다.

Mac 터미널에 환경변수, 자주 쓰는 경로 PATH 추가하기

터미널 상단에 zsh라고 적혀 있다면 .zhsrc 파일에 경로를 추가해야 한다. 예 export PATH=${PATH}:/Users/taptorestart/development/flutter/bin 이런 식으로 flutter 실행 파일이 있는 폴더를 추가할 수 있다. FLUTTER_HOME=/Users/taptorestart/development/flutter export FLUTTER_HOME export PATH=${PATH}:${FLUTTER_HOME}/bin 이런 식으로 환경변수 FLUTTER_HOME을 추가할 수도 있고, 경로를 추가할 수도 있다. 터미널 재실행 뒤에 env 를 실행해서 환경변수 등록 여부를 확인할 수 있다.

flutter에서 firebase를 쓸 수 있을까?

flutter를 사용해서 앱을 개발할 계획이다. Google firebase도 사용할 계획이다. flutter에서 firebase를 쓸 수 있을까? Firebase 문서 살펴보기 예 Cloud Firestore firebase 사이트 들어가서 firestore 문서를 살펴보면 dart 언어에 대한 설명은 따로 없다. flutter로 개발하려면 dart 언어로 개발해야 하는데 말이다. 같은 google에서 만들었는데 설마 flutter에서 firestore는 쓸 수 없는 것일까... pub.dev dart와 flutter 팩키지를 찾을 수 있는 pub.dev에서 찾아보자. 다행히 cloud firestore 팩키지가 있다. 아래 사이트 가면 flutter firebase 지원 항목과 문서를 볼 수 있다. ..

Q. 함수function와 메소드method의 차이는?

A. 메소드는 객체와 관련된 함수로 자바처럼 클래스 기반 언어라면 클래스 내부에 있는 함수다. 함수가 메소드를 포함하는 개념으로 볼 수 있다. 함수 ⊃ 메소드 자바스크립트 함수 예를 들어 자바스크립트에서는 함수라고 한다. 예를들어 자바스크립트로 덧셈 함수를 만들면 아래와 같다. 자바 메소드 덧셈 함수를 자바스크립트에서 하듯 Java에서 만들려고 아래처럼 입력하면 에러가 난다. class Main { public static void main(String[] args) { int sum = sum(1, 2); System.out.println("sum:" + sum); } } public int sum(int a, int b){ return a + b; } 에러 코드 Main.java:8: error: c..

언어 Language 2020.10.25

Node.js mysql 모듈, 데이터베이스에 insert 데이터 입력 뒤 id 값 확인하기

mysql 모듈 Node.js에서 mysql에 접속해서 데이터를 입출력할 때 mysql 모듈을 쓰고 있다. 데이터를 입력한 뒤 id값은 어떻게 확인할까? results.insertId로 확인할 수 있다. 코드 (출처: www.npmjs.com/package/mysql) If you are inserting a row into a table with an auto increment primary key, you can retrieve the insert id like this: connection.query('INSERT INTO posts SET ?', {title: 'test'}, function (error, results, fields) { if (error) throw error; console...