{"id":67,"date":"2012-01-03T13:01:32","date_gmt":"2012-01-03T04:01:32","guid":{"rendered":"http:\/\/ec2-52-35-32-26.us-west-2.compute.amazonaws.com\/blog\/2012\/01\/03\/20120103130132\/"},"modified":"2012-01-03T13:01:32","modified_gmt":"2012-01-03T04:01:32","slug":"20120103130132","status":"publish","type":"post","link":"http:\/\/daimlars.jp\/blog\/?p=67","title":{"rendered":"iTunes\u3067\u518d\u751f\u30c1\u30e3\u30fc\u30c8\u30e9\u30f3\u30ad\u30f3\u30b0\u3092\u5b9a\u671f\u7684\u306b\u81ea\u52d5\u3067\u4f5c\u308a\u305f\u3044(3)"},"content":{"rendered":"<p>\u3072\u3068\u307e\u305a\u3001\u4f5c\u3063\u3066\u307f\u305f\u3002<\/p>\n<\/p>\n<p><a class=\"keyword\" href=\"http:\/\/d.hatena.ne.jp\/keyword\/MySQL\">MySQL<\/a>\u3067\u30c7\u30fc\u30bf\u7ba1\u7406\u3092\u3057\u3066\u3001\u30d7\u30ed\u30b0\u30e9\u30e0\u3092\u5b9f\u884c\u3059\u308b\u3068\u3001\u524d\u56de\u304b\u3089\u306e\u518d\u751f\u56de\u6570\u304c\u5dee\u5206\u3068\u3057\u3066\u767b\u9332\u3055\u308c\u308b\u3002<\/p>\n<p>DB\u306f\u3056\u3063\u3068\u3053\u3093\u306a\u69cb\u6210\u3067\u30c6\u30fc\u30d6\u30eb\u306f\uff12\u3064\u306e\u307f\u3002<\/p>\n<blockquote><p><a class=\"keyword\" href=\"http:\/\/d.hatena.ne.jp\/keyword\/mysql\">mysql<\/a>&gt; desc tbm_track;<\/p>\n<p>+&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;-+&#8212;&#8212;&#8212;&#8212;&#8211;+&#8212;&#8212;+&#8212;&#8211;+&#8212;&#8212;&#8212;+&#8212;&#8212;-+<\/p>\n<p>| Field | Type | Null | Key | Default | Extra |<\/p>\n<p>+&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;-+&#8212;&#8212;&#8212;&#8212;&#8211;+&#8212;&#8212;+&#8212;&#8211;+&#8212;&#8212;&#8212;+&#8212;&#8212;-+<\/p>\n<p>| Track_id | int(11) | NO | PRI | NULL | |<\/p>\n<p>| Name | varchar(160) | YES | | NULL | |<\/p>\n<p>| Artist | varchar(80) | YES | | NULL | |<\/p>\n<p>| Album_Artist | varchar(45) | YES | | NULL | |<\/p>\n<p>| Album | varchar(200) | YES | | NULL | |<\/p>\n<p>| Genre | varchar(45) | YES | | NULL | |<\/p>\n<p>| Kind | varchar(45) | YES | | NULL | |<\/p>\n<p>| Size | int(11) | YES | | NULL | |<\/p>\n<p>| Total_Time | int(11) | YES | | NULL | |<\/p>\n<p>| Disc_Number | int(11) | YES | | NULL | |<\/p>\n<p>| Disc_Count | int(11) | YES | | NULL | |<\/p>\n<p>| Year | int(11) | YES | | NULL | |<\/p>\n<p>| Date_Modified | datetime | YES | | NULL | |<\/p>\n<p>| Date_Added | datetime | YES | | NULL | |<\/p>\n<p>| Bit_Rate | int(11) | YES | | NULL | |<\/p>\n<p>| Sample_Rate | int(11) | YES | | NULL | |<\/p>\n<p>| Play_Count | int(11) | YES | | NULL | |<\/p>\n<p>| play_date | datetime | YES | | NULL | |<\/p>\n<p>| Play_Date_<a class=\"keyword\" href=\"http:\/\/d.hatena.ne.jp\/keyword\/UTC\">UTC<\/a> | datetime | YES | | NULL | |<\/p>\n<p>| Sort_Atrist | varchar(45) | YES | | NULL | |<\/p>\n<p>| Compilation | varchar(45) | YES | | NULL | |<\/p>\n<p>| Persistent_ID | varchar(45) | YES | | NULL | |<\/p>\n<p>| Track_Type | varchar(45) | YES | | NULL | |<\/p>\n<p>| Location | varchar(500) | YES | | NULL | |<\/p>\n<p>| File_Folder_Count | int(11) | YES | | NULL | |<\/p>\n<p>| Lobrary_Folder_Count | int(11) | YES | | NULL | |<\/p>\n<p>+&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;-+&#8212;&#8212;&#8212;&#8212;&#8211;+&#8212;&#8212;+&#8212;&#8211;+&#8212;&#8212;&#8212;+&#8212;&#8212;-+<\/p>\n<p>26 rows in set (0.02 sec)<\/p>\n<\/p>\n<p><a class=\"keyword\" href=\"http:\/\/d.hatena.ne.jp\/keyword\/mysql\">mysql<\/a>&gt; desc tbl_update<\/p>\n<p>-&gt; ;<\/p>\n<p>+&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;+&#8212;&#8212;&#8212;&#8212;-+&#8212;&#8212;+&#8212;&#8211;+&#8212;&#8212;&#8212;+&#8212;&#8212;-+<\/p>\n<p>| Field | Type | Null | Key | Default | Extra |<\/p>\n<p>+&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;+&#8212;&#8212;&#8212;&#8212;-+&#8212;&#8212;+&#8212;&#8211;+&#8212;&#8212;&#8212;+&#8212;&#8212;-+<\/p>\n<p>| Track_ID | int(11) | NO | PRI | NULL | |<\/p>\n<p>| Update_data | datetime | NO | PRI | NULL | |<\/p>\n<p>| Type | varchar(45) | YES | | NULL | |<\/p>\n<p>| Play_Count | int(11) | YES | | NULL | |<\/p>\n<p>| Incremental_Play_Count | int(11) | YES | | NULL | |<\/p>\n<p>+&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;+&#8212;&#8212;&#8212;&#8212;-+&#8212;&#8212;+&#8212;&#8211;+&#8212;&#8212;&#8212;+&#8212;&#8212;-+<\/p>\n<p>5 rows in set, 1 warning (0.02 sec)<\/p>\n<\/p>\n<p><a class=\"keyword\" href=\"http:\/\/d.hatena.ne.jp\/keyword\/mysql\">mysql<\/a>&gt;<\/p><\/blockquote>\n<p><a class=\"keyword\" href=\"http:\/\/d.hatena.ne.jp\/keyword\/Java\">Java<\/a>\u306e\u30bd\u30fc\u30b9\u306f\u3072\u3068\u307e\u305a\u52d5\u304b\u3057\u305f\u30ec\u30d9\u30eb\u3002<a class=\"keyword\" href=\"http:\/\/d.hatena.ne.jp\/keyword\/XML\">XML<\/a>\u306e\u8aad\u53d6\u306f<a href=\"http:\/\/d.hatena.ne.jp\/terazzo\/20080524\/1211656594\">http:\/\/d.hatena.ne.jp\/terazzo\/20080524\/1211656594<\/a>\u3092\u53c2\u8003\u306b\u3057\u3066\u3001\u305d\u3053\u306e\u30bd\u30fc\u30b9\u306f\u5272\u611b\u3002<\/p>\n<blockquote><p>import <a class=\"keyword\" href=\"http:\/\/d.hatena.ne.jp\/keyword\/java\">java<\/a>.io.IOException;<\/p>\n<p>import <a class=\"keyword\" href=\"http:\/\/d.hatena.ne.jp\/keyword\/java\">java<\/a>.net.URL;<\/p>\n<p>import <a class=\"keyword\" href=\"http:\/\/d.hatena.ne.jp\/keyword\/java\">java<\/a>.util.Date;<\/p>\n<p>import <a class=\"keyword\" href=\"http:\/\/d.hatena.ne.jp\/keyword\/java\">java<\/a>.util.List;<\/p>\n<p>import <a class=\"keyword\" href=\"http:\/\/d.hatena.ne.jp\/keyword\/java\">java<\/a>.util.Map;<\/p>\n<\/p>\n<p>import javax.persistence.EntityManager;<\/p>\n<p>import javax.persistence.EntityManagerFactory;<\/p>\n<p>import javax.persistence.EntityTransaction;<\/p>\n<p>import javax.persistence.Persistence;<\/p>\n<p>import javax.persistence.Query;<\/p>\n<\/p>\n<p>import org.<a class=\"keyword\" href=\"http:\/\/d.hatena.ne.jp\/keyword\/xml\">xml<\/a>.sax.SAXException;<\/p>\n<\/p>\n<p>import sample.plist.PropertyListUtils;<\/p>\n<\/p>\n<p>public class ItunesList {<\/p>\n<\/p>\n<p>\/**<\/p>\n<p>* @param args<\/p>\n<p>*\/<\/p>\n<p>public static void main(String[] args) {<\/p>\n<p>\/\/ TODO \u81ea\u52d5\u751f\u6210\u3055\u308c\u305f<a class=\"keyword\" href=\"http:\/\/d.hatena.ne.jp\/keyword\/%A5%E1%A5%BD%A5%C3%A5%C9\">\u30e1\u30bd\u30c3\u30c9<\/a>\u30fb\u30b9\u30bf\u30d6<\/p>\n<p>ItunesList t = new ItunesList();<\/p>\n<p>try{<\/p>\n<p>t.printTracks();<\/p>\n<p>}catch (Exception e){<\/p>\n<p>e.printStackTrace();<\/p>\n<p>}<\/p>\n<p>}<\/p>\n<p>private static final String TEST_FILE_PATH = &#8220;file:C:\\\\Users\\\\jun\\\\Music\\\\<a class=\"keyword\" href=\"http:\/\/d.hatena.ne.jp\/keyword\/iTunes\">iTunes<\/a>\\\\<a class=\"keyword\" href=\"http:\/\/d.hatena.ne.jp\/keyword\/iTunes\">iTunes<\/a> Music Library.<a class=\"keyword\" href=\"http:\/\/d.hatena.ne.jp\/keyword\/xml\">xml<\/a>&#8220;;<\/p>\n<\/p>\n<p>public void printTracks() throws IOException, SAXException {<\/p>\n<\/p>\n<p>\/\/ <a class=\"keyword\" href=\"http:\/\/d.hatena.ne.jp\/keyword\/xml\">xml<\/a>\u30d5\u30a1\u30a4\u30eb\u306e\u8aad\u307f\u8fbc\u307f<\/p>\n<p>\/\/URL url = getClass().getResource(TEST_FILE_PATH);<\/p>\n<p>URL url = new URL(TEST_FILE_PATH);<\/p>\n<p>Object content = PropertyListUtils.load(url);<\/p>\n<p>Map tracks = (Map)<a href=\"#f-c932c28d\" name=\"fn-c932c28d\" title=\"Map) content).get(\"Tracks\");\nint i=1;\nEntityManagerFactory emf = Persistence.createEntityManagerFactory(\"JPA_test\");\nEntityManager em = emf.createEntityManager();\n\/\/ DB\u306e\u6700\u65b0\u60c5\u5831\u3092\u53d6\u5f97\nList db_mater_list = getAllRecordsTbmTrack(em);\nEntityTransaction tx = em.getTransaction();\ntx.begin();\nfor (Map xml_track : tracks.values(\">*1<\/a> {<\/p>\n<p>try{<\/p>\n<p>Integer track_id_<a class=\"keyword\" href=\"http:\/\/d.hatena.ne.jp\/keyword\/xml\">xml<\/a> = (Integer)<a class=\"keyword\" href=\"http:\/\/d.hatena.ne.jp\/keyword\/xml\">xml<\/a>_track.get(&#8220;Track ID&#8221;);<\/p>\n<\/p>\n<p>\/\/\u3059\u3067\u306bDB\u306b\u767b\u9332\u6e08\u307f\u304b\u30c1\u30a7\u30c3\u30af<\/p>\n<p>boolean already_rip_check=false;<\/p>\n<p>for(TbmTrack tbm_track_db : db_mater_list){<\/p>\n<p>if(tbm_track_db.getTrack_id() == track_id_<a class=\"keyword\" href=\"http:\/\/d.hatena.ne.jp\/keyword\/xml\">xml<\/a>.intValue()){<\/p>\n<p>\/\/\u518d\u751f\u56de\u6570\u3092\u66f4\u65b0<\/p>\n<p>already_rip_check = true;<\/p>\n<p>if<a href=\"#f-42840dfd\" name=\"fn-42840dfd\" title=\"xml_track.get(\"Play Count\") != null) &amp;&amp;\ntbm_track_db.getPlay_Count() != ((Integer)xml_track.get(\"Play Count\"\">*2<\/a>.intValue() ){<\/p>\n<p>TblUpdate update = this.setTblUpdate(tbm_track_db,(Integer)<a class=\"keyword\" href=\"http:\/\/d.hatena.ne.jp\/keyword\/xml\">xml<\/a>_track.get(&#8220;Play Count&#8221;));<\/p>\n<p>em.persist(update);<\/p>\n<p>tbm_track_db.setPlay_Count<a href=\"#f-bf58190e\" name=\"fn-bf58190e\" title=\"Integer)xml_track.get(\"Play Count\"\">*3<\/a>;<\/p>\n<p>}<\/p>\n<p>break;<\/p>\n<p>}<\/p>\n<p>}<\/p>\n<p>if(!already_rip_check){<\/p>\n<p>\/\/\u8a72\u5f53\u30ec\u30b3\u30fc\u30c9\u304c\u7121\u3044\u306e\u3067\u65b0\u898f\u8ffd\u52a0<\/p>\n<p>TbmTrack track = setTbmTrack(<a class=\"keyword\" href=\"http:\/\/d.hatena.ne.jp\/keyword\/xml\">xml<\/a>_track);<\/p>\n<p>em.persist(track);<\/p>\n<p>}<\/p>\n<p>}catch (Exception e){<\/p>\n<p>e.printStackTrace();<\/p>\n<p>}<\/p>\n<\/p>\n<p>}<\/p>\n<p>tx.commit();<\/p>\n<p>em.close();<\/p>\n<p>emf.close();<\/p>\n<p>}<\/p>\n<\/p>\n<p>private TblUpdate setTblUpdate(TbmTrack tbmtrack,Integer fromXml){<\/p>\n<p>TblUpdate update = new TblUpdate();<\/p>\n<p>update.setTrack_ID(tbmtrack.getTrack_id());<\/p>\n<p>update.setUpdate_data(new Date());<\/p>\n<p>update.setPlay_Count(tbmtrack.getPlay_Count());<\/p>\n<p>update.setIncremental_Play_Count(fromXml.intValue() &#8211; tbmtrack.getPlay_Count());<\/p>\n<p>return update;<\/p>\n<p>}<\/p>\n<\/p>\n<p>private TbmTrack setTbmTrack(Map <a class=\"keyword\" href=\"http:\/\/d.hatena.ne.jp\/keyword\/xml\">xml<\/a>_track) {<\/p>\n<p>TbmTrack track = new TbmTrack();<\/p>\n<p>track.setTrack_id<a href=\"#f-b06d03ad\" name=\"fn-b06d03ad\" title=\"Integer)xml_track.get(\"Track ID\"\">*4<\/a>;<\/p>\n<p>track.setAlbum<a href=\"#f-9288f702\" name=\"fn-9288f702\" title=\"String)xml_track.get(\"Album\"\">*5<\/a>;<\/p>\n<p>track.setAlbum_Artist<a href=\"#f-e6eb01c5\" name=\"fn-e6eb01c5\" title=\"String)xml_track.get(\"Album Artist\"\">*6<\/a>;<\/p>\n<p>track.setArtist<a href=\"#f-9874167e\" name=\"fn-9874167e\" title=\"String)xml_track.get(\"Artist\"\">*7<\/a>;<\/p>\n<p>if(<a class=\"keyword\" href=\"http:\/\/d.hatena.ne.jp\/keyword\/xml\">xml<\/a>_track.get(&#8220;Bit Rate&#8221;) != null){<\/p>\n<p>track.setBit_Rate<a href=\"#f-2c665e80\" name=\"fn-2c665e80\" title=\"Integer)xml_track.get(\"Bit Rate\"\">*8<\/a>;<\/p>\n<p>}<\/p>\n<p>track.setCompilation<a href=\"#f-ef9cb884\" name=\"fn-ef9cb884\" title=\"String)xml_track.get(\"Compilation\"\">*9<\/a>;<\/p>\n<p>track.setDate_Added<a href=\"#f-2ef5b42f\" name=\"fn-2ef5b42f\" title=\"Date)xml_track.get(\"Date Added\"\">*10<\/a>;<\/p>\n<p>track.setName<a href=\"#f-0e45dded\" name=\"fn-0e45dded\" title=\"String)xml_track.get(\"Name\"\">*11<\/a>;<\/p>\n<p>track.setGenre<a href=\"#f-e69030d4\" name=\"fn-e69030d4\" title=\"String)xml_track.get(\"Genre\"\">*12<\/a>;<\/p>\n<p>track.setKind<a href=\"#f-96e411d3\" name=\"fn-96e411d3\" title=\"String)xml_track.get(\"Kind\"\">*13<\/a>;<\/p>\n<p>track.setSize<a href=\"#f-0e5c05ac\" name=\"fn-0e5c05ac\" title=\"Integer)xml_track.get(\"Size\"\">*14<\/a>;<\/p>\n<p>if(<a class=\"keyword\" href=\"http:\/\/d.hatena.ne.jp\/keyword\/xml\">xml<\/a>_track.get(&#8220;Disc Number&#8221;) != null){<\/p>\n<p>track.setDisc_Number<a href=\"#f-b2b1ad6e\" name=\"fn-b2b1ad6e\" title=\"Integer)xml_track.get(\"Disc Number\"\">*15<\/a>;<\/p>\n<p>}<\/p>\n<p>if(<a class=\"keyword\" href=\"http:\/\/d.hatena.ne.jp\/keyword\/xml\">xml<\/a>_track.get(&#8220;Disc Count&#8221;) != null){<\/p>\n<p>track.setDisc_Count<a href=\"#f-20892cff\" name=\"fn-20892cff\" title=\"Integer)xml_track.get(\"Disc Count\"\">*16<\/a>;<\/p>\n<p>}<\/p>\n<p>if(<a class=\"keyword\" href=\"http:\/\/d.hatena.ne.jp\/keyword\/xml\">xml<\/a>_track.get(&#8220;Year&#8221;) != null){<\/p>\n<p>track.setYear<a href=\"#f-ecd8e4ab\" name=\"fn-ecd8e4ab\" title=\"Integer)xml_track.get(\"Year\"\">*17<\/a>;<\/p>\n<p>}<\/p>\n<p>if(<a class=\"keyword\" href=\"http:\/\/d.hatena.ne.jp\/keyword\/xml\">xml<\/a>_track.get(&#8220;Date Modified&#8221;) != null){<\/p>\n<p>track.setDate_Modified<a href=\"#f-b60fcf04\" name=\"fn-b60fcf04\" title=\"Date)xml_track.get(\"Date Modified\"\">*18<\/a>;<\/p>\n<p>}<\/p>\n<p>if(<a class=\"keyword\" href=\"http:\/\/d.hatena.ne.jp\/keyword\/xml\">xml<\/a>_track.get(&#8220;Sample Rate&#8221;) != null){<\/p>\n<p>track.setSample_Rate<a href=\"#f-7bf14012\" name=\"fn-7bf14012\" title=\"Integer)xml_track.get(\"Sample Rate\"\">*19<\/a>;<\/p>\n<p>}<\/p>\n<p>if(<a class=\"keyword\" href=\"http:\/\/d.hatena.ne.jp\/keyword\/xml\">xml<\/a>_track.get(&#8220;Play Count&#8221;) != null){<\/p>\n<p>track.setPlay_Count<a href=\"#f-8bffbbf1\" name=\"fn-8bffbbf1\" title=\"Integer)xml_track.get(\"Play Count\"\">*20<\/a>;<\/p>\n<p>}<\/p>\n<p>if(<a class=\"keyword\" href=\"http:\/\/d.hatena.ne.jp\/keyword\/xml\">xml<\/a>_track.get(&#8220;Play Date&#8221;) != null){<\/p>\n<p>track.setPlay_Date(new Date(((Integer) <a class=\"keyword\" href=\"http:\/\/d.hatena.ne.jp\/keyword\/xml\">xml<\/a>_track.get(&#8220;Play Date&#8221;)).longValue()));<\/p>\n<p>}<\/p>\n<p>track.setPlay_Date_<a class=\"keyword\" href=\"http:\/\/d.hatena.ne.jp\/keyword\/UTC\">UTC<\/a><a href=\"#f-d7366698\" name=\"fn-d7366698\" title=\"Date)xml_track.get(\"Play Date UTC\"\">*21<\/a>;<\/p>\n<p>track.setCompilation<a href=\"#f-7e485b81\" name=\"fn-7e485b81\" title=\"String)xml_track.get(\"Compilation\"\">*22<\/a>;<\/p>\n<p>track.setPersistent_ID<a href=\"#f-ba0e0eea\" name=\"fn-ba0e0eea\" title=\"String)xml_track.get(\"Persistent ID\"\">*23<\/a>;<\/p>\n<p>track.setTrack_Type<a href=\"#f-d63f24fb\" name=\"fn-d63f24fb\" title=\"String)xml_track.get(\"Track Type\"\">*24<\/a>;<\/p>\n<p>return track;<\/p>\n<p>}<\/p>\n<\/p>\n<p>public static List getAllRecordsTbmTrack(EntityManager em){<\/p>\n<p>Query q = em.createQuery(&#8220;select t from TbmTrack t&#8221;);<\/p>\n<p>List list = q.getResultList();<\/p>\n<p>return list;<\/p>\n<p>}<\/p>\n<p>}<\/p><\/blockquote>\n<div class=\"footnote\">\n<p class=\"footnote\"><a href=\"#fn-c932c28d\" name=\"f-c932c28d\" class=\"footnote-number\">*1<\/a><span class=\"footnote-delimiter\">:<\/span><span class=\"footnote-text\">Map) content).get(&#8220;Tracks&#8221;);<\/p>\n<p>int i=1;<\/p>\n<\/p>\n<p>EntityManagerFactory emf = Persistence.createEntityManagerFactory(&#8220;<a class=\"keyword\" href=\"http:\/\/d.hatena.ne.jp\/keyword\/JPA\">JPA<\/a>_test&#8221;);<\/p>\n<p>EntityManager em = emf.createEntityManager();<\/p>\n<\/p>\n<p>\/\/ DB\u306e\u6700\u65b0\u60c5\u5831\u3092\u53d6\u5f97<\/p>\n<p>List db_mater_list = getAllRecordsTbmTrack(em);<\/p>\n<\/p>\n<p>EntityTransaction tx = em.getTransaction();<\/p>\n<p>tx.begin();<\/p>\n<p>for (Map <a class=\"keyword\" href=\"http:\/\/d.hatena.ne.jp\/keyword\/xml\">xml<\/a>_track : tracks.values(<\/span><\/p>\n<p class=\"footnote\"><a href=\"#fn-42840dfd\" name=\"f-42840dfd\" class=\"footnote-number\">*2<\/a><span class=\"footnote-delimiter\">:<\/span><span class=\"footnote-text\"><a class=\"keyword\" href=\"http:\/\/d.hatena.ne.jp\/keyword\/xml\">xml<\/a>_track.get(&#8220;Play Count&#8221;) != null) &amp;&amp;<\/p>\n<p>tbm_track_db.getPlay_Count() != ((Integer)<a class=\"keyword\" href=\"http:\/\/d.hatena.ne.jp\/keyword\/xml\">xml<\/a>_track.get(&#8220;Play Count&#8221;<\/span><\/p>\n<p class=\"footnote\"><a href=\"#fn-bf58190e\" name=\"f-bf58190e\" class=\"footnote-number\">*3<\/a><span class=\"footnote-delimiter\">:<\/span><span class=\"footnote-text\">Integer)<a class=\"keyword\" href=\"http:\/\/d.hatena.ne.jp\/keyword\/xml\">xml<\/a>_track.get(&#8220;Play Count&#8221;<\/span><\/p>\n<p class=\"footnote\"><a href=\"#fn-b06d03ad\" name=\"f-b06d03ad\" class=\"footnote-number\">*4<\/a><span class=\"footnote-delimiter\">:<\/span><span class=\"footnote-text\">Integer)<a class=\"keyword\" href=\"http:\/\/d.hatena.ne.jp\/keyword\/xml\">xml<\/a>_track.get(&#8220;Track ID&#8221;<\/span><\/p>\n<p class=\"footnote\"><a href=\"#fn-9288f702\" name=\"f-9288f702\" class=\"footnote-number\">*5<\/a><span class=\"footnote-delimiter\">:<\/span><span class=\"footnote-text\">String)<a class=\"keyword\" href=\"http:\/\/d.hatena.ne.jp\/keyword\/xml\">xml<\/a>_track.get(&#8220;Album&#8221;<\/span><\/p>\n<p class=\"footnote\"><a href=\"#fn-e6eb01c5\" name=\"f-e6eb01c5\" class=\"footnote-number\">*6<\/a><span class=\"footnote-delimiter\">:<\/span><span class=\"footnote-text\">String)<a class=\"keyword\" href=\"http:\/\/d.hatena.ne.jp\/keyword\/xml\">xml<\/a>_track.get(&#8220;Album Artist&#8221;<\/span><\/p>\n<p class=\"footnote\"><a href=\"#fn-9874167e\" name=\"f-9874167e\" class=\"footnote-number\">*7<\/a><span class=\"footnote-delimiter\">:<\/span><span class=\"footnote-text\">String)<a class=\"keyword\" href=\"http:\/\/d.hatena.ne.jp\/keyword\/xml\">xml<\/a>_track.get(&#8220;Artist&#8221;<\/span><\/p>\n<p class=\"footnote\"><a href=\"#fn-2c665e80\" name=\"f-2c665e80\" class=\"footnote-number\">*8<\/a><span class=\"footnote-delimiter\">:<\/span><span class=\"footnote-text\">Integer)<a class=\"keyword\" href=\"http:\/\/d.hatena.ne.jp\/keyword\/xml\">xml<\/a>_track.get(&#8220;Bit Rate&#8221;<\/span><\/p>\n<p class=\"footnote\"><a href=\"#fn-ef9cb884\" name=\"f-ef9cb884\" class=\"footnote-number\">*9<\/a><span class=\"footnote-delimiter\">:<\/span><span class=\"footnote-text\">String)<a class=\"keyword\" href=\"http:\/\/d.hatena.ne.jp\/keyword\/xml\">xml<\/a>_track.get(&#8220;Compilation&#8221;<\/span><\/p>\n<p class=\"footnote\"><a href=\"#fn-2ef5b42f\" name=\"f-2ef5b42f\" class=\"footnote-number\">*10<\/a><span class=\"footnote-delimiter\">:<\/span><span class=\"footnote-text\">Date)<a class=\"keyword\" href=\"http:\/\/d.hatena.ne.jp\/keyword\/xml\">xml<\/a>_track.get(&#8220;Date Added&#8221;<\/span><\/p>\n<p class=\"footnote\"><a href=\"#fn-0e45dded\" name=\"f-0e45dded\" class=\"footnote-number\">*11<\/a><span class=\"footnote-delimiter\">:<\/span><span class=\"footnote-text\">String)<a class=\"keyword\" href=\"http:\/\/d.hatena.ne.jp\/keyword\/xml\">xml<\/a>_track.get(&#8220;Name&#8221;<\/span><\/p>\n<p class=\"footnote\"><a href=\"#fn-e69030d4\" name=\"f-e69030d4\" class=\"footnote-number\">*12<\/a><span class=\"footnote-delimiter\">:<\/span><span class=\"footnote-text\">String)<a class=\"keyword\" href=\"http:\/\/d.hatena.ne.jp\/keyword\/xml\">xml<\/a>_track.get(&#8220;Genre&#8221;<\/span><\/p>\n<p class=\"footnote\"><a href=\"#fn-96e411d3\" name=\"f-96e411d3\" class=\"footnote-number\">*13<\/a><span class=\"footnote-delimiter\">:<\/span><span class=\"footnote-text\">String)<a class=\"keyword\" href=\"http:\/\/d.hatena.ne.jp\/keyword\/xml\">xml<\/a>_track.get(&#8220;Kind&#8221;<\/span><\/p>\n<p class=\"footnote\"><a href=\"#fn-0e5c05ac\" name=\"f-0e5c05ac\" class=\"footnote-number\">*14<\/a><span class=\"footnote-delimiter\">:<\/span><span class=\"footnote-text\">Integer)<a class=\"keyword\" href=\"http:\/\/d.hatena.ne.jp\/keyword\/xml\">xml<\/a>_track.get(&#8220;Size&#8221;<\/span><\/p>\n<p class=\"footnote\"><a href=\"#fn-b2b1ad6e\" name=\"f-b2b1ad6e\" class=\"footnote-number\">*15<\/a><span class=\"footnote-delimiter\">:<\/span><span class=\"footnote-text\">Integer)<a class=\"keyword\" href=\"http:\/\/d.hatena.ne.jp\/keyword\/xml\">xml<\/a>_track.get(&#8220;Disc Number&#8221;<\/span><\/p>\n<p class=\"footnote\"><a href=\"#fn-20892cff\" name=\"f-20892cff\" class=\"footnote-number\">*16<\/a><span class=\"footnote-delimiter\">:<\/span><span class=\"footnote-text\">Integer)<a class=\"keyword\" href=\"http:\/\/d.hatena.ne.jp\/keyword\/xml\">xml<\/a>_track.get(&#8220;Disc Count&#8221;<\/span><\/p>\n<p class=\"footnote\"><a href=\"#fn-ecd8e4ab\" name=\"f-ecd8e4ab\" class=\"footnote-number\">*17<\/a><span class=\"footnote-delimiter\">:<\/span><span class=\"footnote-text\">Integer)<a class=\"keyword\" href=\"http:\/\/d.hatena.ne.jp\/keyword\/xml\">xml<\/a>_track.get(&#8220;Year&#8221;<\/span><\/p>\n<p class=\"footnote\"><a href=\"#fn-b60fcf04\" name=\"f-b60fcf04\" class=\"footnote-number\">*18<\/a><span class=\"footnote-delimiter\">:<\/span><span class=\"footnote-text\">Date)<a class=\"keyword\" href=\"http:\/\/d.hatena.ne.jp\/keyword\/xml\">xml<\/a>_track.get(&#8220;Date Modified&#8221;<\/span><\/p>\n<p class=\"footnote\"><a href=\"#fn-7bf14012\" name=\"f-7bf14012\" class=\"footnote-number\">*19<\/a><span class=\"footnote-delimiter\">:<\/span><span class=\"footnote-text\">Integer)<a class=\"keyword\" href=\"http:\/\/d.hatena.ne.jp\/keyword\/xml\">xml<\/a>_track.get(&#8220;Sample Rate&#8221;<\/span><\/p>\n<p class=\"footnote\"><a href=\"#fn-8bffbbf1\" name=\"f-8bffbbf1\" class=\"footnote-number\">*20<\/a><span class=\"footnote-delimiter\">:<\/span><span class=\"footnote-text\">Integer)<a class=\"keyword\" href=\"http:\/\/d.hatena.ne.jp\/keyword\/xml\">xml<\/a>_track.get(&#8220;Play Count&#8221;<\/span><\/p>\n<p class=\"footnote\"><a href=\"#fn-d7366698\" name=\"f-d7366698\" class=\"footnote-number\">*21<\/a><span class=\"footnote-delimiter\">:<\/span><span class=\"footnote-text\">Date)<a class=\"keyword\" href=\"http:\/\/d.hatena.ne.jp\/keyword\/xml\">xml<\/a>_track.get(&#8220;Play Date <a class=\"keyword\" href=\"http:\/\/d.hatena.ne.jp\/keyword\/UTC\">UTC<\/a>&#8220;<\/span><\/p>\n<p class=\"footnote\"><a href=\"#fn-7e485b81\" name=\"f-7e485b81\" class=\"footnote-number\">*22<\/a><span class=\"footnote-delimiter\">:<\/span><span class=\"footnote-text\">String)<a class=\"keyword\" href=\"http:\/\/d.hatena.ne.jp\/keyword\/xml\">xml<\/a>_track.get(&#8220;Compilation&#8221;<\/span><\/p>\n<p class=\"footnote\"><a href=\"#fn-ba0e0eea\" name=\"f-ba0e0eea\" class=\"footnote-number\">*23<\/a><span class=\"footnote-delimiter\">:<\/span><span class=\"footnote-text\">String)<a class=\"keyword\" href=\"http:\/\/d.hatena.ne.jp\/keyword\/xml\">xml<\/a>_track.get(&#8220;Persistent ID&#8221;<\/span><\/p>\n<p class=\"footnote\"><a href=\"#fn-d63f24fb\" name=\"f-d63f24fb\" class=\"footnote-number\">*24<\/a><span class=\"footnote-delimiter\">:<\/span><span class=\"footnote-text\">String)<a class=\"keyword\" href=\"http:\/\/d.hatena.ne.jp\/keyword\/xml\">xml<\/a>_track.get(&#8220;Track Type&#8221;<\/span><\/p>\n<\/div>\n","protected":false},"excerpt":{"rendered":"<p>\u3072\u3068\u307e\u305a\u3001\u4f5c\u3063\u3066\u307f\u305f\u3002 MySQL\u3067\u30c7\u30fc\u30bf\u7ba1\u7406\u3092\u3057\u3066\u3001\u30d7\u30ed\u30b0\u30e9\u30e0\u3092\u5b9f\u884c\u3059\u308b\u3068\u3001\u524d\u56de\u304b\u3089\u306e\u518d\u751f\u56de\u6570\u304c\u5dee\u5206\u3068\u3057\u3066\u767b\u9332\u3055\u308c\u308b\u3002 DB\u306f\u3056\u3063\u3068\u3053\u3093\u306a\u69cb\u6210\u3067\u30c6\u30fc\u30d6\u30eb\u306f\uff12\u3064\u306e\u307f\u3002 mysql&gt; desc tbm_track;  [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[5],"tags":[],"class_list":["post-67","post","type-post","status-publish","format-standard","hentry","category-java"],"_links":{"self":[{"href":"http:\/\/daimlars.jp\/blog\/index.php?rest_route=\/wp\/v2\/posts\/67","targetHints":{"allow":["GET"]}}],"collection":[{"href":"http:\/\/daimlars.jp\/blog\/index.php?rest_route=\/wp\/v2\/posts"}],"about":[{"href":"http:\/\/daimlars.jp\/blog\/index.php?rest_route=\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"http:\/\/daimlars.jp\/blog\/index.php?rest_route=\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"http:\/\/daimlars.jp\/blog\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=67"}],"version-history":[{"count":0,"href":"http:\/\/daimlars.jp\/blog\/index.php?rest_route=\/wp\/v2\/posts\/67\/revisions"}],"wp:attachment":[{"href":"http:\/\/daimlars.jp\/blog\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=67"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"http:\/\/daimlars.jp\/blog\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=67"},{"taxonomy":"post_tag","embeddable":true,"href":"http:\/\/daimlars.jp\/blog\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=67"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}